iOS内存警告

iOS Memory Warning

在 Objective-C 应用程序中,当收到内存警告时,我清除图像缓存(内存和磁盘)并从以前的控制器中删除所有数据(如单元格、图像、数组等)。

当返回时,他们确实在一段时间后加载(因此清除数据有效,图像重新加载需要时间,因此缓存无效)。

问题出在监控应用程序使用的内存上,处理内存警告后没有明显减少。

我在真实设备上使用 Instruments 或 Debug Navigation 检查内存级别(针对所有控制器中的特定事件调用内存处理程序自定义操作)并使用模拟器使用模拟内存警告。

好的,我可以看到您正在监控内存的增加/减少,并且您正在尝试在内存增加时释放尽可能多的内存。没关系,但如果有任何 memory leaks,那么该策略将不会执行任何操作。

我认为您需要调试代码以查找内存泄漏。我建议您使用 Xcode 内存图调试器,它是查找内存泄漏问题的非常有效的工具。 Here 是一个向您展示如何使用它的 post。