SpriteKit 中的 SKLabelNode 内存释放问题


在用spritekit 做游戏的时候,

在内存测试的时候 发现app内存占用会越来越大,
经过各种内存释放操作后,内存恢复正常
但发现还是会 慢慢变大。

研究发现 是 SKLabelNode 这个节点引起的

大概每新建一个SKLabelNode 内存会增加100k差不多的内存占用。

不知道大神有没有碰到过。
应该如何 释放这类 SKLabelNode 的内存。

另外
一般怎样去写内存释放会更保险?

我目前 都是 在removeFromParent 这样写


 _box?.removeFromParent()
_box = nil

但是发现对 SKLabelNode 没作用。
可能要把它的字体部分内存占用给释放掉。

spritekit ios swift

史库水不是水 9 years, 5 months ago

如果你的变量没被别的类持有(比如等了strong属性 加入集合)
不行加 检测一下 看看 哪些资源一只没释放
内存没什么好办法 不断尝试 积累经验
有些地方 甚至去加@autoreleaseprool 缩短回收周期


 - (void)dealloc{
    NSLog(@"输出点类相关内容")
}

大福机器人儿 answered 9 years, 5 months ago

Your Answer