内存使用+使用可见vs添加/删除阶段时的性能

时间:2011-07-28 23:00:51

标签: performance flex memory

这两种情况之间是否存在性能和/或内存使用差异?

场景1:N个视觉元素全部添加到舞台; N-1有visible = false,1有visible = true;

场景2:N个视觉元素,任何时候只有1个添加到舞台上。

THX!

1 个答案:

答案 0 :(得分:6)

Visible = false要快得多。

Colin Moock has weighed in on this issue in a definitive manner。 他的发现:

  

10000 removeChild()调用耗时300ms,而10000可见   任务花了7ms。

他的基本准则是:

  • removeChild() - 用于显示列表的可预测控制,添加和删除。
  • visible=false - 为了直接表现,visible显然更快;

就“可预测性”而言,我们经常使用显示列表作为堆栈来识别和控制显示对象。如果您正在利用可见性,那么您将失去该状态(这可能是一个大问题)。但最后,如果要求表现,胜利者是明确的。

我发现你的帖子是针对Flex的,但我认为,在这种情况下,我们正在谈论SWF的行为,所以flex / flash应该不重要。