マネージド ヒープ上のオブジェクトに関する情報を提供します。
構文
typedef struct _COR_HEAPOBJECT {
CORDB_ADDRESS address;
ULONG64 size;
COR_TYPEID type;
} COR_HEAPOBJECT;
Members
| メンバー | Description |
|---|---|
address |
メモリ内のオブジェクトのアドレス。 |
size |
オブジェクトの合計サイズ (バイト単位)。 |
type |
オブジェクト の 型を表すCOR_TYPEID トークン。 |
注釈
COR_HEAPOBJECT インスタンスは、 ICorDebugProcess5::EnumerateHeap メソッドを呼び出すことによって設定される ICorDebugHeapEnum インターフェイス オブジェクトを列挙することで取得できます。
COR_HEAPOBJECT インスタンスは、マネージド ヒープ上のライブ オブジェクトに関する情報、またはオブジェクトによってルート化されていないがガベージ コレクターによってまだ収集されていないオブジェクトに関する情報を提供します。
パフォーマンスを向上させるために、 COR_HEAPOBJECT.address フィールドは、デバッグ API の大部分で使用される ICorDebugValue インターフェイス値ではなく、 CORDB_ADDRESS 値です。 特定のオブジェクト アドレスの ICorDebugValue オブジェクトを取得するには、 CORDB_ADDRESS 値を ICorDebugProcess5::GetObject メソッドに 渡します。
パフォーマンスを向上させるために、 COR_HEAPOBJECT.type フィールドは、デバッグ API の大部分で使用される ICorDebugType インターフェイス値ではなく、 COR_TYPEID 値です。 特定の型 ID の ICorDebugType オブジェクトを取得するには、 COR_TYPEID 値を ICorDebugProcess5::GetTypeForTypeID メソッドに渡します。
COR_HEAPOBJECT構造体には、参照カウントされた COM インターフェイスが含まれています。
ICorDebugHeapEnum::Next メソッドを呼び出して列挙子からCOR_HEAPOBJECT インスタンスを取得する場合は、後で参照を解放する必要があります。
Requirements
プラットフォーム:サポートされている .NET オペレーティング システムを参照してください。
ヘッダ: CorDebug.idl、CorDebug.h
図書館: CorGuids.lib
.NET のバージョン: .NET Framework 4.5 以降で使用可能
.NET