关于Flash AS3中的代码优化

时间:2010-09-21 09:46:30

标签: actionscript-3 optimization

我很好奇某事。假设我们在代码中有30个对象,并且每个对象都应该通过输入框架事件进行动画处理。哪个更快(在内存执行方面):在主对象中只有一个事件监听器(例如)和调用对象方法,或者为每个对象分别设置事件监听器? 谢谢:)。

更新:实际上,我需要监控每个对象以找出该对象何时在当前帧上,例如在动画结束时,将其从显示列表中删除。最好的方法是什么?

4 个答案:

答案 0 :(得分:2)

对于30个对象,这并不重要。实际上,总的来说它只是很少,因为瓶颈总是会呈现出来 但要回答你的问题:听众很慢。要发生一个通知,需要创建一个Event对象(分配通常非常昂贵),并且需要对匿名函数或方法闭包进行无类型调用(这比调用方法要慢得多)在严格键入的值上。)

答案 1 :(得分:1)

您应该尝试使用补间而不是通过ENTER FRAME事件设置动画。

在ENTER FRAME上制作动画会造成巨大的延迟,特别是如果你有很多物体。

Checkout TweenLite:http://www.greensock.com/tweenlite/

答案 2 :(得分:0)

绝对只有一个事件监听器。听众越少,越快。

答案 3 :(得分:0)

根据经验,一个听众会更好,并会产生更可预测的行为。

话虽如此,这在很大程度上取决于你想要做什么。您可能不必在每个输入帧事件上为每个对象设置动画,从而进一步提高性能。