[]关于Timer的循环的最佳实践?

我在做一个游戏。之前使用这样的组织方式:
 
> 游戏对象继承自Sprite,增加update接口。功能是先update自身,再update子节点。update自身留给派生类实现具体功能。然后只在Main里开一个frameLoop,作为主循环,获取delta。主循环中调用顶层节点的update。
 
为了减少update子节点的层层调用,我重写了addChild的逻辑,使最上层的节点保存了所有子节点的列表,updateChildren的时候就不层层调用,直接在列表上遍历。
 
但是我试了另一种方式:
 
> 对象不再调用updateChildren。每个节点构造时启动一个frameLoop,调用自身的update函数(派生类重载之)。如果进池则clearAll(),出池重新frameLoop。
 
这种方式则有很多frameLoop在同时工作。我自己测试似乎后者高效一点点,但结果不精确。
 
我想问问哪种方式是更佳的实践? 理论上讲效率应该哪个高些呢,还是差不多?
 
我粗略看了下Timer的代码,水平有限不太容易看懂。所以干脆来请教一下。
已邀请:

cuixueying

赞同来自:

能描述下你具体实现的功能效果吗?我们看下如何最优!

要回复问题请先

商务合作
商务合作