java - 如何找到内存泄漏的根源?

标签 java android memory-leaks out-of-memory heap-memory

我的应用基本上是图像编辑器。有一个欢迎页面,可以打开带有 Intent 的主要 Activity 。如果在主要 Activity 运行时方向发生变化,内存消耗只会加倍并保持这种状态。如果我关闭主要 Activity 转回欢迎 Activity 并再次开始主要 Activity ,则不会发生同样的问题。我认为所有这些都表明内存泄漏,我已经调查过自己但找不到应用程序泄漏内存的原因。我正在使用应用程序上下文,并且我的应用程序中没有静态字段。我试图转储堆并使用 MAT 对其进行分析,但是我找不到任何好的东西。我希望有人能告诉我正确的方向,找到内存泄漏的根源或其他可能的问题解释。

最佳答案

Google I|O 2011 conference presentation 中涵盖了这个特定场景.我建议观看演示文稿,因为它可以帮助您使用 MAT 更好地找到问题。

关于java - 如何找到内存泄漏的根源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6046424/

相关文章:

java - @WithMockUser 在集成测试中不起作用 - Spring boot

android - 导航架构组件 - 启动画面

android - 原始文件或可绘制文件的路径

java - 禁止程序输入小于1的数字(if else/switch)

没有 FXML 的 JavaFX 国际化

android - UsbHost 模式下的 TransactionTooLargeException

delphi - 使用 FastMM 和退出代码检测内存泄漏

c++ - 如何使用 char* 修复此内存泄漏?

java - 我应该通过 response.getOutputStream() 显式关闭 ZipOutputStream 吗?

java - 递归子字符串越界错误