我的应用程序使用了一对UIViewControllers
内置SKScenes
,一些大图像和ObjectAL内容。
在内部使用SKScenes
推送几个视图控制器之后(是的,我知道这不符合SpriteKit的最佳实践),我的应用程序可以达到大约120 MB的RAM。此时,我收到一些内存警告,我的SKScenes
中的背景图像被释放。这是令人惊讶的,因为我正在使用的iPad 3应该以624 MB的速度崩溃,而120 MB远远低于此值(source)。
奇怪的是,当我运行我的应用程序时,其他进程使用的RAM量急剧增加。随着时间的推移,请查看以下视频以及我的笔记:https://www.youtube.com/watch?v=GoMKK3XXWFw&feature=youtu.be
我不确定如何调试这个。我试图在仪器的工具活动监视器中查看我的内存使用情况,但它没有记录大的其他进程内存跳转。
两个问题:
1。为什么会这样?
2。我该如何调试这样的东西?
更新
其他进程的内存消耗模式在不同设备上有很大差异。下面的内存使用模式是每个屏幕(每个ViewController推送)。 iPad Mini :233 MB - > 170 MB - > 160 MB - > 155 MB - > 160 MB - > 155 MB - > 105 MB iPad 3 :320 MB - > 380 MB - > 400 MB - > 440 MB - > 470 MB - > 470 MB - > 370 MB