共通言語ランタイム (CLR: Common Language Runtime) のガベージ コレクション機構に関する統計情報を提供します。
typedef struct _COR_GC_STATS {
ULONG Flags;
SIZE_T ExplicitGCCount;
SIZE_T GenCollectionsTaken[3];
SIZE_T CommittedKBytes;
SIZE_T ReservedKBytes;
SIZE_T Gen0HeapSizeKBytes;
SIZE_T Gen1HeapSizeKBytes;
SIZE_T Gen2HeapSizeKBytes;
SIZE_T LargeObjectHeapSizeKBytes;
SIZE_T KBytesPromotedFromGen0;
SIZE_T KBytesPromotedFromGen1;
} COR_GC_STATS;
メンバー
メンバー |
説明 |
---|---|
Flags |
計算して返されるフィールド値を示します。 |
ExplicitGCCount |
外部要求によって強制的に実行されたガベージ コレクションの数を示します。 |
GenCollectionsTaken |
各ジェネレーションについて実行されたガベージ コレクションの数を示します。 |
CommittedKBytes |
すべてのヒープ内でコミットされている合計 KB 数。 |
ReservedKBytes |
すべてのヒープ内で予約されている合計 KB 数。 |
Gen0HeapSizeKBytes |
ジェネレーション 0 ヒープのサイズ (KB 単位)。 |
Gen1HeapSizeKBytes |
ジェネレーション 1 ヒープのサイズ (KB 単位)。 |
Gen2HeapSizeKBytes |
ジェネレーション 2 ヒープのサイズ (KB 単位)。 |
LargeObjectHeapSizeKBytes |
大きいオブジェクト ヒープのサイズ (KB 単位)。 |
KBytesPromotedFromGen0 |
ジェネレーション 0 からジェネレーション 1 に移されたオブジェクトのサイズ (KB 単位)。 |
KBytesPromotedFromGen1 |
ジェネレーション 1 からジェネレーション 2 に移されたオブジェクトのサイズ (KB 単位)。 |
解説
ICLRGCManager::GetStats メソッドでは、COR_GC_STATS 構造体の Flags フィールドに、1 つ以上の COR_GC_STAT_TYPES 列挙型の値を設定して、設定する統計情報を指定する必要があります。
次の表に、この構造体によって提供される統計情報と、2 つの COR_GC_STAT_TYPES 列挙値、COR_GC_COUNTS と COR_GC_MEMORYUSAGE との対応を示します。
COR_GC_COUNTS で指定 |
COR_GC_MEMORYUSAGE で指定 |
---|---|
ExplicitGCCount GenCollectionsTaken |
CommittedKBytes ReservedKBytes Gen0HeapSizeKBytes Gen1HeapSizeKBytes Gen2HeapSizeKBytes LargeObjectHeapSizeKBytes KBytesPromotedFromGen0 KBytesPromotedFromGen1 |
使用法の例を次に示します。
COR_GC_STATS GCStats;
GCStats.Flags = COR_GC_COUNTS | COR_GC_MEMORYUSAGE;
pCLRGCManager->GetStats(&GCStats);
必要条件
プラットフォーム : 「.NET Framework システム要件」を参照
ヘッダー : GCHost.idl
ライブラリ: MSCorEE.dll にリソースとして格納されていること
.NET Framework のバージョン : 4、3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0、1.1、1.0