我有一个简单的问题 - 如果应用程序在运行时使用的内存每次加载一个视图控制器时会略微增加(0.1mb),这是否重要?我有一个具有无限级别的游戏,如果玩家失去视图控制器基本上刷新(例如所有计时器无效)并且加载了主菜单控制器。然后每次重启无限级别时,内存(显示在调试导航器中)都会上升。因此,第一次播放水平时它是226 mb,第二次是226.2 mb,第三次是226.4 mb等。这是一个问题吗?
答案 0 :(得分:6)
可能发生的事情是,当您释放无限级视图控制器时(通过从superview中解除/删除),仍有一些对视图/ iVars /属性的强烈引用仍悬空。尝试在释放视图控制器之前释放所有属性和实例变量。您还可以尝试将所有IBOutlet(不会从视图中删除)定义为弱类型,以便在取消视图控制器时释放它们。
您可以记住一些内容管理清单:
你的问题虽然目前不严重,但很快就会变得严重。平均iPad / iPhone开始提供大约300 MB的内存警告,所以如果你开始为游戏添加更多功能,这可能会成为一个大问题。
希望这个答案有所帮助。