.NET内存“Gen X堆大小”.NET性能计数器的测量结果如何?

时间:2010-02-24 14:01:46

标签: .net memory garbage-collection

是“所分配的所有对象的总和”还是“从操作系统分配用于存储对象的内存量”。还是别的什么?

我认为这是从操作系统分配的内存,但需要确认。

2 个答案:

答案 0 :(得分:4)

这取决于世代号。对于Gen 0,它测量您可以分配的最大内存:

MSDN quote :

  

显示第0代可分配的最大字节数;   
它不表示在第0代中分配的当前字节数。

对于Gen 1& 2它测量所有已分配对象的总和,因为在这些代中,实际上提升的对象未分配。

  

显示第1代中的当前字节数;   
此计数器不显示第1代的最大尺寸。

答案 1 :(得分:3)

生成堆大小测量当前在该特定垃圾收集生成中的所有.NET对象的托管部分的总分配内存。

有关详细信息,请参阅this