VS探查器和DotMemory中的内存使用率高,报告的内存使用率低

时间:2019-10-22 10:40:11

标签: .net debugging memory-leaks memory-profiling

我正在解决.Net Windows服务中的内存泄漏问题。它会在定时循环上进行一些数据转换,并且在连续运行之间不会共享任何信息。

  • 我使用VS托管内存调试器来识别有问题的类,
  • 添加了对持有对孤立对象的引用的事件处理程序的删除,
  • 通过在循环上创建/删除有问题的类实例来测试此修复程序-在更改之前,内存使用量随时间增加,在更改之后最初增加,但被“限制”(大概是GC在完成其工作)

部署此修补程序后,该服务仍会随着时间增加内存使用量。一旦达到2GB,我会再次生成一个转储文件,但是现在VS报告仅使用了8MB。我并不完全信任它,所以在DotMemory中打开了转储,令人惊讶的是它还显示了1.97GB的总内存和8.92MB的已用内存。

有人有任何指示如何进行吗?

0 个答案:

没有答案
相关问题