使用Adobe Flex 3,有没有办法指定终结者?
答案 0 :(得分:5)
ActionScript 3中没有finaliser /析构函数的概念,即使在AVM /字节码级别也是如此。
答案 1 :(得分:0)
即使在ActionScript本身没有析构函数/终结器这样的东西,我也会认为在你不再需要它时,有一个释放类中所有资源的方法是一种好习惯。
垃圾收集只捕获任何地方不再需要的对象,并使用引用计数来确定何时出现这种情况。因此,只要存在未删除的事件侦听器,循环依赖项(彼此引用的对象)等,您可能不会注意到它,但是您的内存使用量将不断增加,并且GC根本不会释放这些资源。
因此,应该采用destroy()
或finalize
方法:
destroy()
或finalize()
delete
字典中的所有强对象键null
(原始值不可重置)对于显示对象,在调度Event.REMOVED_FROM_STAGE
时调用此方法通常不是一个坏主意。