发布CCTextureCache?

时间:2011-09-15 09:24:39

标签: objective-c cocos2d-iphone

我可能有内存泄漏,我的应用程序在一个iphone上工作得很好,但在另一个i上我总是得到这个错误:

2011-09-15 07:20:34.478 BetaDoll[1334:707] cocos2d: deallocing <CCTextureCache = 00267990 | num of textures =  3 | keys: (
    "fur.png",
    "Closing_eyes.png",
    "regular.png"
)>
Program received signal:  “EXC_BAD_ACCESS”

现在,当我使用:

texture = [[CCTextureCache sharedTextureCache] addImage:[NSString stringWithFormat:@"%@.png", basic_pic]];

我总是释放它。

这里的问题是什么?我该如何释放纹理缓存呢?什么时候??

非常感谢

1 个答案:

答案 0 :(得分:3)

您可以删除纹理缓存,如下所示。

[[CCDirector sharedDirector] purgeCachedData];

它将删除未使用和缓存的纹理。

顺便说一下,您正在发布CCTextureCache实例。

cocos2d: deallocing <CCTextureCache

可能是由CCTextureCache + purgeSharedTextureCache方法引起的。

[CCTextureCache purgeSharedTextureCache];

您无需调用此方法。