解决COCOSTUDIO 1.3.0.1各种痛恨的控件Reader 的内存泄露

无加冰嘅可乐原创:http://blog.csdn.net/le12380/article/details/25159465

最近被COCOSTUDIO各种折腾。。。我水平也有限啊。。

COCOSTUDIO论坛的例子都不处理内存泄露。。。多伤心啊。。。

入主题,博主的是版本 是2.2.3

例如提示泄露信息 :....LayoutReader::getInstance + 0x7 bytes....

双击信息就会看到,这一语句


这个好办了 调用一下 LayoutReader::getInstance 直接获取 然后delete不就行了么

但我手贱的在后面加了一句instanceLayoutReader-> autorelease();  结果很悲催,切换场景,各种莫名其妙的错误。。

千万别乱用autorelease();这个特坑

后来 

我在AppDelegate.cpp的 头文件里
#include "CocoStudio/Reader/WidgetReader/LayoutReader/LayoutReader.h" //跨项目调用文件,其实。。。就是文件夹路径而已
析构函数里调用
LayoutReader* lyout = LayoutReader::getInstance();
CC_SAFE_DELETE(lyout);
ObjectFactory* ob = ObjectFactory::getInstance();
	ob->destroyInstance(); 

然后各种Reader内存泄露就解决了。。哈哈

No memory leaks detected.
Visual Leak Detector is now exiting. 这正是我们想要的

顺便COCOSTUDIO 其他内存泄露 的

调用 UI编辑器里面的东西后要。。。
SceneReader::sharedSceneReader()->purge();
GUIReader::shareReader()->purge();
ActionManager::shareManager()->purge();

调用动画编辑器里面的东西要。。。

CCArmatureDataManager::sharedArmatureDataManager()->purge();
DictionaryHelper::shareHelper()->purgeDictionaryHelper();




阅读更多
个人分类: COCOS2DX
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭