我的应用程序(arc,ios5)有时会在我拍照并保存到CoreData
. 使用Instruments发现崩溃前有内存警告,于是尝试了解内存是如何使用的。
我的应用程序将行程存储在 CoreData(共 200MB)中,每次行程有数百个CLLocation
对象和数十个UIImage
对象。
每次我通过pushViewController查看一次行程详情时,内存使用量都会增加;但是在我popViewController之后,内存使用量仍然存在。
我认为有几个嫌疑人:
- CoreData 缓存,但我不知道如何清除它;
- 详细视图控制器,因为我没有看到在每个popViewController之后调用任何viewDidUnload;
经过一些测试,我很困惑,即使我手动调用viewDidUnload,内存使用量仍然存在。
我还在我的应用程序的 ios5.0 模拟器中测试了内存泄漏工具,它很干净。