5

scheduleUpdateorを使用schedule:@selecotr(xxx)して、実行するメソッドをスケジュールできます。

スケジュールされたメソッドは別のスレッドで実行されますか?

4

2 に答える 2

9

いいえ。Cocos2d オブジェクトはスレッドセーフではなく、メイン スレッドで実行されることが想定されています。タイマーは、メインの実行ループでスケジュールされます。したがって、いかなる状況でもメインスレッドをブロックしないでください。

于 2013-01-19T13:14:36.250 に答える
1

[self performSelectorInBackground:…] および同様の NSObject メソッドを使用できます。

通常の警告が適用されます。cocos2d のほとんどすべてのプロパティは「非アトミック」とマークされているため、スレッドセーフではありません。そのため、マルチスレッド化の対象とその理由を正確に理解していない限り、一般的なマルチスレッド化の問題に遭遇する可能性があります。

于 2013-01-19T14:22:23.347 に答える