我正在创建这样的动作
id action = [CCRepeatForever actionWithAction:
[CCSequence actions:
[CCMoveTo actionWithDuration:TIMESPEED position:POINT_TOP],
[CCMoveTo actionWithDuration:TIMESPEED position:POINT_START],
nil]];
我想在几个节点上运行
for (Myitem* bonusitem in self.bonusitems) {
[bonusitem runAction:action];
}
这次崩溃。如果我每次都使用[bonusitem runAction:[action copy]]
,但我认为我也有责任发布行动。但是,这样做也总是崩溃。所以我只是留下那些没有发布的东西而且它有效,但AFAIK会违反复制规则现在不会吗? (复制的操作永远不会被释放,从而导致内存泄漏)
答案 0 :(得分:1)
您可以检查任何操作子类的代码。你会看到动作的副本返回为自动释放的对象。所以你可以自由使用它的副本。您不能多次使用任何操作。