GCHandleType 枚举
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
表示类型可以分配的 GCHandle 句柄类型。
public enum class GCHandleType
public enum GCHandleType
[System.Serializable]
public enum GCHandleType
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public enum GCHandleType
type GCHandleType =
[<System.Serializable>]
type GCHandleType =
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type GCHandleType =
Public Enum GCHandleType
- 继承
- 属性
字段
Normal | 2 | 此句柄类型表示不透明句柄,这意味着无法通过此句柄解析固定对象的地址。 可以使用此类型跟踪对象,并防止它被垃圾回收器回收。 当非托管客户端持有对托管对象的唯一引用(从垃圾回收器检测不到该引用)时,此枚举成员很有用。 |
Pinned | 3 | 此句柄类型类似于 Normal,但允许使用固定对象的地址。 这将防止垃圾回收器移动对象,因此将降低垃圾回收器的效率。 使用 Free() 方法可尽快释放已分配的句柄。 |
Weak | 0 | 此句柄类型用于跟踪对象,但允许回收该对象。 当回收某个对象时,GCHandle 的内容归零。 在终结器运行之前, |
WeakTrackResurrection | 1 | 该句柄类型类似于 Weak,但如果对象在终结过程中复活,此句柄不归零。 |