用于诊断.NET中的内存泄漏的工具(ASP.NET应用程序)

时间:2009-01-23 17:23:14

标签: .net asp.net memory-leaks

我们需要一个工具来轻松检测ASP.NET应用程序中的内存泄漏。我们有一个消耗大量内存的应用程序。

由于

9 个答案:

答案 0 :(得分:4)

使用WinDbg并不像使用dotTrace那么容易,但它可以帮助您发现应用程序中的许多奇怪之处。除此之外,您还可以在Tess Ferrandez blog上找到有关调试ASP.Net应用程序的宝贵信息。

答案 1 :(得分:4)

Rob Mariani在Tracking down managed memory leaks上撰写了一篇很好的文章,帮助我追踪桌面应用程序中的悬空引用。

答案 2 :(得分:4)

我发布了new article on the subject on MSDN。它包含一系列工具。

答案 3 :(得分:2)

嗯,“轻松”是诀窍......但是dotTRACE可能值得一看。

答案 4 :(得分:2)

查看Microsoft的FxCop,它还会分析性能问题等。

答案 5 :(得分:1)

.Net Memory Profiler。使用试用版一次。这很有帮助,但我不需要经常购买它。

我发现的事情是始终确保您处理实现IDisposable的任何资源,特别是在DirectoryServices中。

答案 6 :(得分:0)

我读到了Ants Profiler。祝你好运。

答案 7 :(得分:0)

If broken it is, fix it you should读Tess。它应该让你走上正确的道路。

答案 8 :(得分:0)

我发现这个也很有用:http://www.codeproject.com/Articles/19490/Memory-Leak-Detection-in-NET

有趣点的总结:

  1. 使用Perfmon监视.Net CLR锁定/当前逻辑线程的数量,以查看您是否正在创建线程但不会销毁它们。
  2. 使用Perfmon比较.Net CLR /#字节与进程/专用字节,以查看它是否是泄漏的托管或非托管内存
  3. 假设其托管内存泄漏,使用windbg / sos.dll追踪引用