如何检测GC.Collect()是否手动运行?

时间:2016-08-24 14:54:46

标签: .net garbage-collection

我怀疑我正在使用的图书馆正在猛烈调用GC.Collect(),这会导致问题。如何确认是否确实发生了这样的手动触发收集?

我的程序本身具有很高的内存吞吐量,但是对于我来说,每秒每个>很多100个Gen 2集合,特别是考虑到它只使用了几百MB的RAM。 / p>

1 个答案:

答案 0 :(得分:4)

performance counter for that,"诱导GC"每次调用GC.Collect()时都会打勾。使用Perfmon.exe查看它,右键单击图形>添加计数器> .NET CLR内存> #诱导GC>选择你的exe。

一个体面的反编译器总是很有用(ILSpy,Reflector等),你可以告诉作者他需要修复的确切方法。