6

我开发了一个应用程序,我想检查应用程序中发生的内存泄漏。我正在尝试使用 Eclipse MAT,但不成功,我正在获取 HROF 文件,但 Eclipse MAT 无法读取它。谁能帮帮我。有什么其他方法可以查到。

4

3 回答 3

4

Android 的 dump.hprof 文件需要转换。然后你可以在 MAT 中打开 converted-dump.hprof。

hprof-conv dump.hprof converted-dump.hprof
于 2012-09-21T04:47:36.867 回答
3

我发现这个视频非常有用。这讨论了如何从 logcat(垃圾收集器日志)中查找内存泄漏以及如何使用内存分析器(MAT)。

于 2012-09-21T05:10:18.637 回答
1

@sujith视频非常好。总而言之,1)视频谈到了“非静态内部类”的一个非常难以发现的泄漏。本页对此有详细说明。 2)他谈到了使用Memory Analyzer Tool时的一些重要概念,例如浅堆与保留堆,GC Root和支配树。 3)他展示了一个使用 MAT 来识别泄漏的示例。在 MAT 中,他所说的最有用的工具是 Histogram 和 Dominator Tree。在进一步检查对象时,他使用右键菜单“GC Root 路径”,然后使用“排除弱引用”。

于 2013-04-09T23:24:48.357 回答