Поделиться через


Структура 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.

См. также раздел