我如何计算C#中垃圾收集的时间?

时间:2015-05-06 12:52:07

标签: c# .net garbage-collection instrumentation

我想知道垃圾收集需要多长时间。

基于这些文章:

我想出了下面的代码。这是计算C#中垃圾收集时间的正确方法吗?

skip

1 个答案:

答案 0 :(得分:1)

如果您只需要知道在GC中花费了多少时间,您只需使用CLR提供的memory performance counters即可。你试图重塑的任何东西都不可靠。

您需要在GC中查找%时间计数器。

  

显示执行a所花费的时间百分比   自上次垃圾收集周期以来的垃圾收集。这个   counter通常表示垃圾收集器完成的工作   代表应用程序收集和压缩内存。这个柜台   仅在每个垃圾收集结束时更新。这个柜台   不是平均水平;它的值反映了最后观察到的值。