GCHandleType 枚举

表示 GCHandle 类可以分配的句柄的类型。

**命名空间:**System.Runtime.InteropServices
**程序集:**mscorlib(在 mscorlib.dll 中)

语法

声明
<SerializableAttribute> _
<ComVisibleAttribute(True)> _
Public Enumeration GCHandleType
用法
Dim instance As GCHandleType
[SerializableAttribute] 
[ComVisibleAttribute(true)] 
public enum GCHandleType
[SerializableAttribute] 
[ComVisibleAttribute(true)] 
public enum class GCHandleType
/** @attribute SerializableAttribute() */ 
/** @attribute ComVisibleAttribute(true) */ 
public enum GCHandleType
SerializableAttribute 
ComVisibleAttribute(true) 
public enum GCHandleType

成员

  成员名称 说明
由 .NET Compact Framework 支持 Normal 此句柄类型表示不透明句柄,这意味着无法通过此句柄解析固定对象的地址。可以使用此类型跟踪对象,并防止它被垃圾回收器回收。当非托管客户端持有对托管对象的唯一引用(从垃圾回收器检测不到该引用)时,此枚举成员很有用。 
由 .NET Compact Framework 支持 Pinned 此句柄类型类似于 Normal,但允许使用固定对象的地址。这将防止垃圾回收器移动对象,因此将降低垃圾回收器的效率。使用 Free 方法可尽快释放已分配的句柄。 
由 .NET Compact Framework 支持 Weak 此句柄类型用于跟踪对象,但允许回收该对象。当回收某个对象时,GCHandle 的内容归零。在终结器运行之前,Weak 引用归零,因此即使终结器使该对象复活,Weak 引用仍然是归零的。 
由 .NET Compact Framework 支持 WeakTrackResurrection 该句柄类型类似于 Weak,但如果对象在终结过程中复活,此句柄不归零。 

平台

Windows 98、Windows 2000 SP4、Windows CE、Windows Millennium Edition、Windows Mobile for Pocket PC、Windows Mobile for Smartphone、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition

.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求

版本信息

.NET Framework

受以下版本支持:2.0、1.1、1.0

.NET Compact Framework

受以下版本支持:2.0、1.0

请参见

参考

System.Runtime.InteropServices 命名空间
GCHandle 结构