【发布时间】:2016-12-05 14:26:36
【问题描述】:
我正在开发大型 iOS 应用程序。在这里,我在每个视图控制器中使用了大量动画,因此有时应用程序会因内存而崩溃。
问题描述如下
- Pushing View Controller,点击按钮,启动
UIImage10 个图像的动画。这将应用程序内存使用量从 13MB 增加到 53MB(在 Xcode 8.1 和 iPhone 5 的 iOS 10.1 中检查“调试导航器”)。 - 弹出视图控制器时不会减小内存大小。
但如果我同时将应用程序发送到后台,那么它会将内存显着减少到 17MB。
请您指导我,我需要如何处理这种情况。
注意:
- 两个对象(ViewController 和图像对象)都调用了它的dealloc 方法,所以意味着它们应该释放内存。
- 我什至尝试过@autorelease pool,但没有帮助。
提前致谢
【问题讨论】:
-
您需要使用不同的方法,不会将所有解码的图像数据同时加载到内存中。在此处查看示例:stackoverflow.com/a/13850242/763355
标签: ios objective-c xcode memory-management nsautoreleasepool