内存问题没有达到堆限制?

时间:2011-03-15 19:47:07

标签: android out-of-memory

因此,对于我的特定应用程序,我在ListView中有一个非常大的项目列表,超过10,000个项目。我没有将所有项目保留在内存中,而是我从数据库中一次懒得加载它们大约150个。我正在使用LRU缓存来保留最后500个左右的项目,但问题是即便如此,我迟早会遇到内存问题。

当我在列表视图中移动时,此错误最终会开始垃圾邮件我的Logcat:

03-15 12:36:45.114: ERROR/dalvikvm-heap(8971): 86400-byte external allocation too large for this process.
03-15 12:36:45.114: ERROR/GraphicsJNI(8971): VM won't let us allocate 86400 bytes

一旦我进入这种状态,如果我点击一个项目转到下一个信息活动,它将崩溃并出现OutOfMemory异常。在此之前,它非常好,可以很好地进入信息活动。

查看我在DDMS中的内存使用情况,堆大小仅为6左右,当错误开始弹出时,实际使用量仅为5mb左右。信息活动确实包含一些图像和内容,但绝对不是一个极端的数量,并且只会使用100kb左右的使用量。这不是我听到的通常的16mb堆限制附近的地方。

有什么想法吗?

0 个答案:

没有答案