PinnedGCHandle<T> 结构
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
表示托管对象的强类型 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> 跟踪的对象的类型。
- 继承
- 实现
注解
该对象固定在 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> 。 |