Cocos2d—JS中的内存管理问题

第0种情况:

let sprite = new cc.Sprite();
let animation = cc.animationCache.getAnimation(name);
let anim = new cc.Animate(animation);
sprite.runAction(anim);

问题0_0:当sprite从父节点remove掉时,anim需要release么?
问题0_1:如果anim会被另外一个sprite调用,调用时anim不是说应该调用 clone方法?

第1种情况:

let sprite = new cc.Sprite();
let animation = cc.animationCache.getAnimation(name);
let anim = new cc.Animate(animation);
anim.retain();

在当前对象中存储anim,某个动作触发后调用sprite.runAction(anim);

问题1_0:当sprite从父节点remove掉时,anim需要release么