使用LargeHeap的应用程序上的垃圾收集器速度太慢

时间:2012-08-29 15:18:41

标签: java android memory garbage-collection

当我开始研究我的项目时,我不知道如何编程,只是在我学习的过程中学习。我的程序需要很多位图图形,我很早就遇到了内存问题。我在我的应用程序清单中启用了LargeHeap,允许我为图形使用更多内存,但从那以后我学到了更多关于android如何使用垃圾收集器处理内存的知识。我制作了小型演示应用程序来测试GC是否能跟上我改变位图的速度,一切正常。

但是当我尝试在我的大项目中使用GC时,它现在有一个170mb的荒谬堆(该程序不是一般用途,所以堆不是真正的问题...我只是在挑剔),内存消耗的构建和构建。我已经注意到我的应用程序中的android在过去有一些奇怪的行为,我最终说“程序可能对系统来说太大了”,所以我想知道我的程序是否太大是否有意义还是密集的垃圾收集器来做足够快的事情?我的意思是,一个应用程序的170mb堆很荒谬,对吗?

编辑 - 我在想这个问题的可能解决方案,并且我的问题的答案将来自重写整个程序以利用GC。但是,正如我所说,这将涉及重写整个事情!! - 所以我宁愿不打扰:D

1 个答案:

答案 0 :(得分:0)

首先,您必须担心GC。通常情况是(如图库的情况),加载了多个图像。基于其BMP的图像被加载并因此被存储。因此,它们的大小实际上取决于像素数。

This是一个非常类似的问题。因此,调整Image大小和方面的比例,一切都应该运作良好。

相关问题