COR_HEAPOBJECT 结构
提供有关托管堆上的对象的信息。
语法
typedef struct _COR_HEAPOBJECT {
CORDB_ADDRESS address;
ULONG64 size;
COR_TYPEID type;
} COR_HEAPOBJECT;
成员
成员 | 说明 |
---|---|
address |
内存中对象的地址。 |
size |
对象的总大小(以字节为单位)。 |
type |
表示对象类型的 COR_TYPEID 标记。 |
备注
可以通过枚举使用调用 ICorDebugProcess5::EnumerateHeap 方法填充的 ICorDebugHeapEnum 接口对象来检索 COR_HEAPOBJECT
实例。
COR_HEAPOBJECT
实例提供有关托管堆上的活动对象的信息,或有关未由任何对象根化但尚未被垃圾收集器收集的对象的信息。
为了获得更好的性能,该 COR_HEAPOBJECT.address
字段是一个 CORDB_ADDRESS
值,而不是大部分调试 API 中使用的 ICorDebugValue 接口值。 若要获取给定对象地址的 ICorDebugValue 对象,可以将 CORDB_ADDRESS
值传递给 ICorDebugProcess5::GetObject 方法。
为了获得更好的性能,该 COR_HEAPOBJECT.type
字段是一个 COR_TYPEID
值,而不是大部分调试 API 中使用的 ICorDebugType 接口值。 若要获取给定类型 ID 的 ICorDebugType 对象,可以将 COR_TYPEID
值传递给 ICorDebugProcess5::GetTypeForTypeID 方法。
COR_HEAPOBJECT
结构包含引用计数的 COM 接口。 如果通过调用 ICorDebugHeapEnum::Next 方法检索枚举器中的 COR_HEAPOBJECT
实例,则必须随后释放该引用。
要求
平台:请参阅系统要求。
标头:CorDebug.idl、CorDebug.h
库:CorGuids.lib
.NET Framework 版本:自 4.5 起可用