PinnedGCHandle<T> 结构

定义

表示托管对象的强类型 GC 句柄。

generic <typename T>
 where T : classpublic value class PinnedGCHandle : IDisposable, IEquatable<System::Runtime::InteropServices::PinnedGCHandle<T>>
public struct PinnedGCHandle<T> : IDisposable, IEquatable<System.Runtime.InteropServices.PinnedGCHandle<T>> where T : class
type PinnedGCHandle<'T (requires 'T : null)> = struct
    interface IDisposable
Public Structure PinnedGCHandle(Of T)
Implements IDisposable, IEquatable(Of PinnedGCHandle(Of T))

类型参数

T

PinnedGCHandle<T> 跟踪的对象的类型。

继承
PinnedGCHandle<T>
实现

注解

该对象固定在 GC 堆中的固定位置,并允许获取其地址。

此类型对应于 Pinned

如果未正确使用,则此类型不安全。 错误的使用(如生存期管理不当)提供无效的句柄值或并发处置可能会导致难以诊断崩溃或数据损坏。

构造函数

名称 说明
PinnedGCHandle<T>(T)

为指定对象分配句柄。

属性

名称 说明
IsAllocated

获取一个值,该值指示是否已分配此句柄。

Target

获取或设置此句柄表示的对象。

方法

名称 说明
Dispose()

执行与释放、释放或重置非托管资源关联的应用程序定义任务。

Equals(Object)

指示此实例和指定对象是否相等。

Equals(PinnedGCHandle<T>)

指示当前对象是否等于同一类型的另一个对象。

FromIntPtr(IntPtr)

返回从句柄创建到托管对象的新 PinnedGCHandle<T> 对象。

GetAddressOfObjectData()

检索对象 PinnedGCHandle<T>数据的地址。

GetHashCode()

返回当前实例的哈希代码。

ToIntPtr(PinnedGCHandle<T>)

返回对象的内部整数表示形式 PinnedGCHandle<T>

适用于

另请参阅