COR_GC_STATS 结构
提供有关公共语言运行时 (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 |
指示每个代系执行的垃圾回收数。 |
CommittedKBytes |
所有堆中提交的总千字节数。 |
ReservedKBytes |
所有堆中保留的总千字节数。 |
Gen0HeapSizeKBytes |
第 0 代堆的大小(以 KB 为单位)。 |
Gen1HeapSizeKBytes |
第 1 代堆的大小(以 KB 为单位)。 |
Gen2HeapSizeKBytes |
第 2 代堆的大小(以 KB 为单位)。 |
LargeObjectHeapSizeKBytes |
大型对象堆的大小(以字节为单位)。 |
KBytesPromotedFromGen0 |
从第 0 代提升为第 1 代的对象的大小(以 KB 为单位)。 |
KBytesPromotedFromGen1 |
从第 1 代提升为第 2 代的对象的大小(以 KB 为单位)。 |
备注
ICLRGCManager::GetStats 方法要求将 COR_GC_STATS
结构的 Flags
字段设置为 COR_GC_STAT_TYPES 枚举的一个或多个值,以指定要设置的统计信息。
下表将此结构提供的统计信息映射到两个 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);
要求
平台:请参阅系统要求。
标头:GCHost.idl
库:作为资源包含在 MSCorEE.dll 中
.NET Framework 版本:自 1.0 起可用