我正在使用iPad上的邮件客户端(类似于默认应用客户端),并使用核心数据框架作为缓存来提高性能。我的应用程序使用大约4.5 - 5 MB的堆内存,然后由于内存溢出而崩溃(使用分配工具检测到这一点)。如果我尝试减少内存,我的性能变得非常缓慢和缓慢,因为我无法缓存我的视图,数据结构(存储文件夹和所有邮件)和tableviews。
我检查了我的crashLogs,我看到在我的应用程序面前写下了抛弃,这证实操作系统强行关闭了我的应用程序!
我用仪器来检测这些限制。 Please find the attached image here 这是我在应用程序崩溃之前录制的快照。
我已经在模拟器上测试了我的应用程序,它可以稳定在6到7 MB的堆内存。 有什么方法可以让我在操作系统中获取更多内存,或者在我的代码中稍微重新设计时避免崩溃。
任何建议或帮助都将受到高度赞赏。
答案 0 :(得分:1)
6-8MB的内存永远不会成为问题。可能你要么是在捣乱内存,要么你正在运行一个调试版本并打开Zombies,默认情况下永远不会删除僵尸。 NSZombiesEnabled = YES和NSDeallocateZombies = NO似乎会泄漏内存,因为没有删除任何内容。