如何配置.net垃圾收集器?

时间:2010-11-26 22:18:17

标签: .net garbage-collection

我想知道如何分析垃圾收集器的性能并监控三代。我想知道是否有可能在任何时间知道生活在gen0,gen1,gen2中的当前物体是什么。

3 个答案:

答案 0 :(得分:5)

你可以得到useful information on GC performance from PerfMon - 不是你想要的那么精细。

  

有许多.NET内存性能   计数器和这是给你的   解释中的一些指导原则   计数器数据以及如何关联   他们。这假设你有一个基本的   了解GC。

如果您有一个包含Performance/Profiling Tools的Visual Studio高级版本,您可以获得有关单个对象分配和生命周期的更多信息。具体来说,这可能在您希望的领域:

  

垃圾收集器回收内存   通过解除分配整整一代人   对象。对于已分析的对象   应用程序创建,对象   生命周期视图显示数字和   对象和生成的大小   什么时候被收回。

如果您真的有冒险精神,可以使用Profiling Tools API进行自定义分析。

答案 1 :(得分:1)

The CLR profiler could do this,但我不认为它是主动更新的,例如3.5,4.0,对于2.0目标应用程序,您可以使用链接版本执行此操作。

答案 2 :(得分:1)

查看JetBrains DotTrace。