当CCSpawn里包含动作全部为CCCallFuncN时的异常,求解

RT,当想让多件CCCallFuncN事件同时执行时,会发生每个事件执行两遍的情况

{
    CCCallFuncND  *test1 = CCCallFuncND::create(this, callfuncND_selector(Mytest::printtest1));
    CCCallFuncND  *test2 = CCCallFuncND::create(this, callfuncND_selector(Mytest::printtest2));

    runAction(CCSpawn::create(test1,  test2, NULL));
}

void Mytest::printtest1(CCNode* call, void* data)
{
    CCLOG("test1");

}

void Mytest::printtest2(CCNode* call, void* data)
{
    CCLOG("test2");

}


```



执行如上动作时,printtest1、printtest2会分别执行两遍,打印出test1  test2  test1  test2
后来我用CCSequence代替CCSpawn倒是解决了问题。但是毕竟本来是想同时执行,你用CCSequence看起来会很别扭,最重要的是,其实动作组合这部分我们是让策划来写脚本的,我们只是提供好接口,而策划可能不是很理解哪些是CCCallFuncN,哪些是诸如CCMoveBy这类的动作。
所以,请教下,怎样解决这个问题,让CCSpawn里包含动作全部为CCCallFuncN时不要执行两遍

不要沉,求大神解决方法:9: