COR_PRF_GC_GENERATION 列舉

指出記憶體回收產生。

語法

typedef enum {  
    COR_PRF_GC_GEN_0 = 0,  
    COR_PRF_GC_GEN_1 = 1,  
    COR_PRF_GC_GEN_2 = 2,  
    COR_PRF_GC_LARGE_OBJECT_HEAP = 3,
    COR_PRF_GC_PINNED_OBJECT_HEAP= 4
} COR_PRF_GC_GENERATION;  

成員

member 描述
COR_PRF_GC_GEN_0 物件會儲存為第 0 代。
COR_PRF_GC_GEN_1 物件會儲存為第 1 代。
COR_PRF_GC_GEN_2 物件會儲存為第 2 代。
COR_PRF_GC_LARGE_OBJECT_HEAP 物件會儲存在大型物件堆積中。
COR_PRF_GC_PINNED_OBJECT_HEAP 物件會儲存在釘選的物件堆積中。

備註

記憶體回收行程會根據存在時間將物件分為幾個世代,以改善記憶體管理效能。 記憶體回收行程目前使用三個世代 (編號為 0、1 和 2),以及兩個特殊堆積區段 (一個用於大型物件,一個用於釘選的物件)。

大小超過閾值的物件會儲存在大型物件堆積中。 釘選的物件則可配置給釘選的物件堆積,以避免在一般堆積上配置這些物件所產生的效能成本。 其他的配置物件一開始會屬於第 0 代。 在第 0 代中進行記憶體回收後還存在的物件,全都會升階為第 1 代。 在第 1 代中進行記憶體回收後還存在的物件,則會進入第 2 代。

使用世代就表示,記憶體回收行程在任何一個時間點,只能使用一部分的已配置物件。

COR_PRF_GC_GENERATION 列舉會由 COR_PRF_GC_GENERATION_RANGE 結構使用。

規格需求

平台:請參閱系統需求

標頭: CorProf.idl、CorProf.h

程式庫:CorGuids.lib

.NET Framework版本:自 2.0 起提供

另請參閱