有谁可以帮我?我的应用程序在演练中崩溃,我禁用了NSZombies,我还使用了以下代码
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
[[NSURLCache sharedURLCache] removeAllCachedResponses];
}但我的应用程序还是崩溃了。该应用程序包含图像和一些加载本地图像的网页视图。请指导我如何优化应用程序,以避免崩溃。
提前感谢
发布于 2014-07-07 03:58:52
我找到了一种放大内存使用的方法,我只需要为每个viewDidLoad of ViewControllers执行viewDidLoad,因为didReceiveMemoryWarning很晚了,或者在触发内存警告时被延迟以清除缓存的响应,它在代码上看起来可能不太好,但是它阻止存储和填充内存和缓存。我仍然不能称之为解决方案,但它是一种有效的预防方法,以避免内存泄漏。
发布于 2014-07-03 11:06:57
屏幕截图显示了多个错误:
261.4MB内存太多了!您说您正在加载本地图像。确保这些图像尽可能小(像素大小),并且只保留在内存中,只要在当前视图上需要它们。这里有许多关于如何做到这一点的讨论。如果您找不到解决方案,请在代码中发布一个新的问题,详细说明有多少图像及其像素大小、是否使用以及您试图修复的内容。使用Xcode中的工具来找出在代码中分配太多内存的位置。发布于 2014-07-03 11:17:27
当您使用任何分配的对象时,显式地将它们设置为零以释放内存。
即使你使用ARC,这也会加快清理的速度。
https://stackoverflow.com/questions/24546563
复制相似问题