Jul*_*ñoz 5 memory cocos2d-iphone automatic-ref-counting kobold2d
我有一个很大的问题,我不明白为什么会发生.情况就是这样:
事实上,当我开始这个项目时,一切看起来都很完美,但是对于我制作的每个场景(页面),内存都在增加.Page1:30Mb.,Page2:40,Page 3:54,Page 4:65 ...在7或8个场景之后,Instruments,Xcode或iPad本身挂起应用程序而没有任何消息(除了具有最终低内存警告的仪器) .
为什么每个场景后都没有释放内存?也许是因为ARC和没有超级dealloc变量.为什么纹理看起来完全卸载但似乎没有卸载因为内存在崩溃之前无法控制地增长?
Bob*_*con 10
我遇到了类似的记忆保留问题,仪器上没有泄漏.我无法得到 - (void)dealloc甚至被调用,直到我将以下内容写入每个场景的.m文件:
-(void) onExit {
//unschedule selectors to get dealloc to fire off
[self unscheduleAllSelectors];
//remove all textures to free up additional memory. Textures get retained even if the sprite gets released and it doesn't show as a leak. This was my big memory saver
[[CCTextureCache sharedTextureCache] removeAllTextures];
[super onExit];
}
Run Code Online (Sandbox Code Playgroud)
实现之后,我的内存在每个replaceScene:被调用后被释放.希望这对你有用.