COR_GC_STATS 結構
提供 Common Language Runtime (CLR) 之記憶體回收機制的統計資料。
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 |
表示為每一個層代 (Generation) 所執行的記憶體回收數目。 |
CommittedKBytes |
所有堆積中所認可的 KB 總數。 |
ReservedKBytes |
所有堆積中所保留的 KB 總數。 |
Gen0HeapSizeKBytes |
層代零堆積的大小 (以 KB 為單位)。 |
Gen1HeapSizeKBytes |
層代一堆積的大小 (以 KB 為單位)。 |
Gen2HeapSizeKBytes |
層代二堆積的大小 (以 KB 為單位)。 |
LargeObjectHeapSizeKBytes |
大型物件堆積的大小 (以 KB 為單位)。 |
KBytesPromotedFromGen0 |
從層代零升級到層代一的物件大小 (以 KB 為單位)。 |
KBytesPromotedFromGen1 |
從層代一升級到層代二的物件大小 (以 KB 為單位)。 |
備註
ICLRGCManager::GetStats 方法需要將 COR_GC_STATS 結構的 Flags 欄位設定為 COR_GC_STAT_TYPES 列舉型別 (Enumeration) 的其中一個或多個值,以指定要設定的統計資料。
下表將由此結構所提供的統計資料對應到兩個 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