使用DebugDia定位解决内存泄漏

来源:互联网 发布:mac os sierra 卡 编辑:程序博客网 时间:2024/05/23 14:34

内存泄漏始终是c++程序员的一个痛点,也是必须解决的问题。

本文简单介绍使用DebugDia来定位内存泄漏,真的很强大,能定位到行/定位到调用堆栈。

而且DebugDia是微软提供的免费工具。它比WinDebug和 vs2015自带的内存分析工具都要更强大。


下载地址(使用bing 搜出来头一条就是):

https://www.microsoft.com/en-us/download/details.aspx?id=49924

win7旗舰版只有x64版本的才能用。


所使用的工具:
(1)DebugDia 2 Analysis
(2)DebugDia 2 Collection


步骤分为3步,如下:
(第一步)先使用DebugDia 2 Analysis分析,抓到.dump文件,最好是抓两个.dump,对比一段时间的内存泄漏‘

如附图1~4





(第二步)再用DebugDia 2 Collection,分析生成的.dump文件,会生成.mht文件,自动跳转到由ie explorer浏览器(需要低版本,譬如ie9)打开 

如附图5


(第三步)分析结果,非常详细
如附图6



更详细的文档 可以参考微软  Tess Ferrandez 的大作:
https://blogs.msdn.microsoft.com/tess/2010/01/14/debugging-native-memory-leaks-with-debug-diag-1-1/

原创粉丝点击