iPad应用程序仅在5MB后内存不足

时间:2010-09-18 16:39:04

标签: iphone ipad memory-management

我仔细查看了泄漏,但我没有(很少 - 全部在400字节以下)。我已经阅读了一些关于不使用imageNamed调用的帖子,因为它们会缓存图像。我没有使用任何这些。我正在使用imageWithContentsOfFile。

我使用了大量的图片。主要是使用图形上下文渲染自己。我正在发布所有内容,您可以看到内存被保留,然后在乐器视图中释放。

底线,在我的图片和标签上来回轻拂后,我得到一个内存警告级别1,然后是2,然后崩溃。所有内存使用量通常都在5MB以下。

是否有一些奇怪的缓存正在进行?这让我疯了。我的iPad应用程序无法使用,因为它在使用它的几分钟内崩溃,因为它似乎逐渐堆积在内存中而没有指出任何泄漏或大量内存使用。

这与我的'Live Bytes'有关,是4.57MB但是我的“#Living”是53825吗?为什么还有这么多物品?生物对象数是否> 50,000正常吗?即使“实时字节”保持不变,它也会不断上升(对象计数)。

1 个答案:

答案 0 :(得分:1)

正如我所描述的here,分配工具没有显示应用程序的总内存使用情况。您在该工具中看到的5 MB只是冰山一角。

相反,您需要使用Memory Monitor工具查看应用程序的整体内存大小。我想你会对那里的数字感到惊讶。

调整内存使用量是一项复杂的任务,尤其是对于您正在处理的大型图像。仅仅因为Leaks没有显示任何泄漏并不意味着你没有在某些领域积累记忆。在应用程序中执行重复操作,并使用Allocations工具中的新Heap Shot功能查看每次重复操作之间累积的对象(如果有)。我用这种方式抓住了许多微妙的记忆累积。