【发布时间】:2018-08-27 18:37:18
【问题描述】:
我有一个使用 recyclerView 的活动,每个项目的视图都有一个 Image.
我在 Destroy 上使用了 Garbage Collector GC(),如下所示
recyclerView= null;
adapter=null;
Runtime.getRuntime().gc();
当我开始另一个使用毕加索从远程主机加载图像的活动它说
java.lang.OutOfMemoryError: Failed to allocate a 94784012 byte allocation with 4194304 free bytes and 87MB until OOM
我找到了一个答案,可以帮助我克服 OutOfMemoryError 通过 增加应用程序的堆大小 但我仍然想释放并确保释放 Activity 占用的内存,而不是增加应用程序的堆大小。提前致谢,请帮助完成该任务。
【问题讨论】:
-
阅读此
https://android.jlelse.eu/memory-leak-patterns-in-android-4741a7fcb570 -
先生!如前所述(2)从GC根遍历内存中的所有对象引用并标记具有来自GC根的引用的活动对象。在被引用的页面上,它应该管理活动,因为我在 OnDestroy 中放置了 recyclerview=null 并调用了 GC 来收集它。
标签: android memory-management memory-leaks