Структура COR_HEAPOBJECT
Предоставляет сведения об объекте, находящемся в управляемой куче.
Синтаксис
typedef struct _COR_HEAPOBJECT {
CORDB_ADDRESS address;
ULONG64 size;
COR_TYPEID type;
} COR_HEAPOBJECT;
Элементы
Член | Описание |
---|---|
address |
Адрес объекта в памяти. |
size |
Общий размер объекта в байтах. |
type |
Маркер COR_TYPEID , представляющий тип объекта . |
Комментарии
COR_HEAPOBJECT
Экземпляры можно получить путем перечисления объекта интерфейса ICorDebugHeapEnum , который заполняется путем вызова метода ICorDebugProcess5::EnumerateHeap .
Экземпляр COR_HEAPOBJECT
предоставляет сведения либо о динамическом объекте в управляемой куче, либо об объекте, который не является корнем ни одного объекта, но еще не был собран сборщиком мусора.
Для повышения производительности поле является значениемCORDB_ADDRESS
, а не значением интерфейса ICorDebugValue, COR_HEAPOBJECT.address
используемым в большей части API отладки. Чтобы получить объект ICorDebugValue для заданного адреса объекта, можно передать CORDB_ADDRESS
значение в метод ICorDebugProcess5::GetObject .
Для повышения производительности поле является значениемCOR_TYPEID
, а не значением интерфейса ICorDebugType, COR_HEAPOBJECT.type
используемым в большей части API отладки. Чтобы получить объект ICorDebugType для заданного идентификатора типа, можно передать COR_TYPEID
значение в метод ICorDebugProcess5::GetTypeForTypeID .
Структура COR_HEAPOBJECT
включает в себя com-интерфейс с подсчетом ссылок. При получении экземпляра COR_HEAPOBJECT
из перечислителя путем вызова метода ICorDebugHeapEnum::Next необходимо впоследствии освободить ссылку.
Требования
Платформы: см. раздел Требования к системе.
Заголовок: CorDebug.idl, CorDebug.h
Библиотека: CorGuids.lib
версии платформа .NET Framework: доступно с версии 4.5.