了解WinDbg报告以查找.net中的内存泄漏

时间:2013-04-04 09:24:37

标签: asp.net memory-management memory-leaks windbg

我知道我的应用程序正在泄漏内存和我用WinDbg工具来分析。我附加了W3WP进程并运行了以下命令:

!address -summary

它产生了以下结果。

Result of !address -summary command on WinDbg

我希望有人帮我理解这个结果,并指导我或提供一个链接,反过来帮助我了解需要做什么

2 个答案:

答案 0 :(得分:2)

MSDN链接解释了不同内存区域的内容,就如何解释这一点而言,您需要在泄漏之前和之后记录输出两次,以查看增加的内容,我们可以通过查看最大的使用区域,但有一个标记为<unknown>。您可能需要先将符号排序,然后再次运行!address命令。

此外,您可能会发现umdhdebugdiag可能会让您更容易找到泄漏点,另外WinDbg中还有泄漏检测命令!heap -l

就链接而言,有用资源有related post

答案 1 :(得分:1)

未知 - &gt; .Net Objects使用的内存

免费 - &gt;自由区

图片 - &gt; dlls占用的内存。

Heap32 - &gt;本机对象占用的内存。(非.Net)

http://blogs.msdn.com/b/webtopics/archive/2010/04/02/address-summary-explained.aspx