cocos2d-iphone - CCScheduler 崩溃作为消息发送到解除分配的实例

标签 cocos2d-iphone crash

这听起来像是一个菜鸟问题,因为它是。我已经尝试了几天来弄清楚我在做什么让它崩溃,但我无法弄清楚。

我有各种使用 CCActions 的对象。当需要从屏幕上移除对象时,我调用 [spriteObject stopAllActions];然后我释放 Action 。 (我保留了 init 中的操作,因为我试图避免这种崩溃)。

程序在 CCScheduler 的这一行随机崩溃:

[elt->currentTimer release];

错误消息是我正在向已释放的实例发送消息。但我不知道什么时候被释放。我保留了我创建的所有 Action 。我什至尝试在不释放操作的情况下运行程序,看看是否是原因,但它仍然崩溃。

有时它会在 20 分钟后崩溃,有时会在 2 分钟后崩溃。这是相当随机的。
我不确定要放什么,因为代码很分散。

基本上,我有一个 Sprite,它包含一个“策略”对象,其中包含正在运行的 CCAction。在运行时,我创建一个“策略”并将其传递给保留该策略的 Sprite 。

直到程序执行结束, Sprite 才会被释放。

关于如何弄清楚什么被释放,在哪里以及为什么被释放的任何想法?我实在想不通。不知道在这里放什么信息。 :C

最佳答案

Cocos2d 目前不是线程安全的,并且不希望从其他线程调用 api。

关于cocos2d-iphone - CCScheduler 崩溃作为消息发送到解除分配的实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9681708/

相关文章:

iphone - 使用自定义字体将文本本地化为中文

ios - 获取自上次方法调用以来的时间

ios - 升级到Cocos2d 2.1后AppDelegate错误

visual-studio-2012 - Visual Studio 2012 因 Silverlight 5 项目而崩溃

iphone - 在 MPMoviePlayerController 中播放 mov 文件时出现问题

ios - iOS文字游戏框架

Node.js - 当此代码运行时,Heroku 服务器崩溃

android - 奇怪 - Android IntentService 杀死了我应用程序的其余部分,但继续自行运行

graphics - 将图形调试器与 Nsight 2.2 一起使用时应用程序崩溃

macos - Qt 5.1-运行时崩溃