Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Provides statistics about the garbage collection mechanism of the 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;
Members
Member |
Description |
---|---|
Flags |
Indicates which field values should be calculated and returned. |
ExplicitGCCount |
Indicates the number of garbage collections that were forced by external request. |
GenCollectionsTaken |
Indicates the number of garbage collections performed for each generation. |
CommittedKBytes |
The total number of kilobytes committed in all heaps. |
ReservedKBytes |
The total number of kilobytes reserved in all heaps. |
Gen0HeapSizeKBytes |
The size, in kilobytes, of the generation-zero heap. |
Gen1HeapSizeKBytes |
The size, in kilobytes, of the generation-one heap. |
Gen2HeapSizeKBytes |
The size, in kilobytes, of the generation-two heap. |
LargeObjectHeapSizeKBytes |
The size, in kilobytes, of the large object heap. |
KBytesPromotedFromGen0 |
The size, in kilobytes, of the objects promoted from generation zero to generation one. |
KBytesPromotedFromGen1 |
The size, in kilobytes, of the objects promoted from generation one to generation two. |
Remarks
The ICLRGCManager::GetStats method requires the Flags field of the COR_GC_STATS structure to be set to one or more values of the COR_GC_STAT_TYPES enumeration to specify which statistics are to be set.
The following table maps the statistics provided by this structure to the two COR_GC_STAT_TYPES enumeration values, COR_GC_COUNTS and COR_GC_MEMORYUSAGE.
Specified by COR_GC_COUNTS |
Specified by COR_GC_MEMORYUSAGE |
---|---|
ExplicitGCCount GenCollectionsTaken |
CommittedKBytes ReservedKBytes Gen0HeapSizeKBytes Gen1HeapSizeKBytes Gen2HeapSizeKBytes LargeObjectHeapSizeKBytes KBytesPromotedFromGen0 KBytesPromotedFromGen1 |
An example of the usage is as follows:
COR_GC_STATS GCStats;
GCStats.Flags = COR_GC_COUNTS | COR_GC_MEMORYUSAGE;
pCLRGCManager->GetStats(&GCStats);
Requirements
Platforms: See .NET Framework System Requirements.
Header: GCHost.idl
Library: Included as a resource in MSCorEE.dll
.NET Framework Versions: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0, 1.1, 1.0