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;
成员
成员 | 说明 |
---|---|
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 起可用