我在启用ARC的情况下使用Cocos2d 2.0。我的游戏是一个随机生成的游戏,因此我需要在游戏中间的场景中加载/卸载纹理(spritesheet-batchnode)。我正在尝试从文件中删除spriteframes,并删除我希望在中间卸载的spritesheet的密钥的纹理。卸载工作表后,当我使用dumpcachedtextureInfo时,该spritesheet纹理不会显示在dumpcachedtextureinfo的日志中。估算Cocos2d游戏的内存使用情况
但是,当我使用仪器/活动监视器来分析我的应用程序时,真正的内存使用情况在卸载纹理和spritesheet后没有下降。
是否有一种方法,dumpcachedtextureinfo不会显示仍在内存中的纹理? 另外,分配中的我的livebytes列显示4 MB。
此外,当我在各种地方阅读,分配不显示纹理内存。
所以我分配住字节一栏写着4 MB,我总纹理内存与dumpcchedtextureinfo的日志显示的显示为84MB,但内存监视器剧照显示的实际内存使用率是84 + Spritesheet大小+直播字节
我无法理解这种差异?
我没有退出现场,所以我不确定ARC是否持有内存或什么?
既然你已经在使用仪器,检查是否有任何大的大量的记忆仍然“活着”,可能还会泄露。除此之外,也许您正在查看永远不会减少的总分配列。 – LearnCocos2D 2013-03-23 00:31:13
我关注活动监视器下的“Real Memory usage”指标。即使在卸载后它也不会减少。我不明白这是为什么? – user1847220 2013-03-23 06:15:34