如何找到内存泄漏?

Posted

技术标签:

【中文标题】如何找到内存泄漏?【英文标题】:How do find a memory leak? 【发布时间】:2014-07-21 10:43:40 【问题描述】:

我在 MFC 中创建了一个应用程序。运行我的应用程序 18 小时后,该过程达到了 2.5 GB 的内存使用量。我已经尝试使用 VMMap 来找出内存泄漏。但它只提供高级数据。

是否有任何工具可以让我从转储文件中获取内存泄漏,或者是否可以使用 VMMap 找出内存泄漏的来源。

【问题讨论】:

这个问题跑题了,因为它要求我们提供推荐的工具,您可以查看 debugdiag 和 windbg,它们是免费的,debugdiag 更易于使用 如果您使用 MS Visual Studio 并且可以让您的应用程序干净地关闭,您可以试试这个:msdn.microsoft.com/en-us/library/x98tx3cf(v=vs.110).aspx 【参考方案1】:

来自 IBM 的Rational Purify 可以帮助您。 (没有关系)

我以前用过,效果很好。

【讨论】:

以上是关于如何找到内存泄漏?的主要内容,如果未能解决你的问题,请参考以下文章

如何防止java中的内存泄漏

如何查找 Java 内存泄漏

如何在长时间运行的 Perl 程序中找到内存泄漏?

linux中内存泄漏的检测记录内存泄漏的代码

使用Debug Diagnostic Tool排除内存泄漏故障

如何排查并修复内存泄漏