游戏UI面板过多,在普通模式(面板只创建一次,关闭时只做隐藏)下,游戏运行后TextureCache中的Texture2d的数量越来越多。最后导致游戏崩溃!!
现在想改一个比较节省内存模式(每次打开面板时都创建一个widget*,关闭时remove) , 但是现在remove之后发现 创建widget所使用 的Texture2d 的引用计数并不为0
游戏UI面板过多,在普通模式(面板只创建一次,关闭时只做隐藏)下,游戏运行后TextureCache中的Texture2d的数量越来越多。最后导致游戏崩溃!!
现在想改一个比较节省内存模式(每次打开面板时都创建一个widget*,关闭时remove) , 但是现在remove之后发现 创建widget所使用 的Texture2d 的引用计数并不为0
这导致 内存并没有释放, 仔细查看代码后,发现在ccSpriteFrameCache.cpp addSpriteFramesWithFile 时,增加了不少应用计数。在调用 该类的remove方法后还是存在3个引用计数
有没有哪位大神知道这3个引用计数改怎么移除。 或者有没有别的方法解决改内存优化问题