我在静态菜单场景中遇到内存泄漏,似乎它发生在每个场景、游戏场景本身以及静态菜单/游戏结束上。内存似乎被正确释放(场景消失后内存减少)。
那些静态场景甚至不包含 update 回调定义。 这一切都在 didMoveToView 中设置,其中有一对 SKLabelNodes 和 SKSpriteNode 分配有 spriteNodeWithImage。
我曾尝试使用 dealloc 来监控场景是否被正确释放,而且它似乎不是问题的根源。
浏览 google 指向我在 stackoverflow 上创建的其他一些线程 spriteNodeWithImage textureWithImage 可能会导致 - 内存泄漏 -奇怪的错误“CUICatalog:无效请求:请求子类型而不指定成语”
所以我尝试创建 UIImage imageNamed 然后放入纹理并在 SKTexture 中使用,实际上它已经删除了 CUICatalog 错误(无论如何,这似乎是一条没有被删除的愚蠢消息苹果 - 任何人都可以确认吗?) 但是根据内存泄漏,这根本没有帮助,无论如何,那个场景中的任何东西都是从一开始就创建的,所以我不知道为什么这个内存会以每秒 0.5mb 的速度不断增长。
期待任何提示。
最好的问候
其实我已经找到问题的根源了。 似乎调试物理会导致巨大的内存泄漏
skView.showsPhysics = YES;
这不是什么大问题,因为它仅在调试时发生 showsPhysics=YES。
不过很高兴知道。
关于ios - 静态菜单场景上的 SpriteKit 内存泄漏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36055220/
欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) | Powered by Discuz! X3.4 |