다음을 통해 공유


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세대 힙의 크기(킬로바이트)입니다.
Gen1HeapSizeKBytes 1세대 힙의 크기(킬로바이트)입니다.
Gen2HeapSizeKBytes 2세대 힙의 크기(킬로바이트)입니다.
LargeObjectHeapSizeKBytes 큰 개체 힙의 크기(킬로바이트)입니다.
KBytesPromotedFromGen0 0세대에서 1세대로 승격된 개체의 크기(킬로바이트)입니다.
KBytesPromotedFromGen1 1세대에서 2세대로 승격된 개체의 크기(킬로바이트)입니다.

설명

ICLRGCManager::GetStats 메서드를 사용하려면 Flags 설정할 통계를 지정하기 위해 구조체의 COR_GC_STATS 필드를 COR_GC_STAT_TYPES 열거형의 하나 이상의 값으로 설정해야 합니다.

다음 표에서는 이 구조체에서 제공하는 통계를 두 개의 COR_GC_STAT_TYPES 열거형 값 COR_GC_COUNTSCOR_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부터 사용 가능

참고 항목