Flash 删除的备选方案

Flash 删除的备选方案,flash,actionscript-3,actionscript,flash-cs5,Flash,Actionscript 3,Actionscript,Flash Cs5,在Actionscript的早期版本中,您可以结合使用delete和Object.registerClass('name',null)在运行时删除类定义。现在,根据Adobe文档,delete只会删除任何动态附加的属性,使核心对象或定义留在内存中 在Actionscript 3中,有没有一种方法可以在运行时完全删除类定义(而不仅仅是实例)?简单地说,没有 在AS3中,只能删除动态对象的成员。您可能已经在谷歌上搜索并找到了这个,但是: 您可以使用多个ApplicationDomain来隔离定义,但

在Actionscript的早期版本中,您可以结合使用
delete
Object.registerClass('name',null)
在运行时删除类定义。现在,根据Adobe文档,
delete
只会删除任何动态附加的属性,使核心对象或定义留在内存中

在Actionscript 3中,有没有一种方法可以在运行时完全删除类定义(而不仅仅是实例)?

简单地说,没有

在AS3中,只能删除动态对象的成员。您可能已经在谷歌上搜索并找到了这个,但是:


您可以使用多个ApplicationDomain来隔离定义,但我想这并不是您想要的。

如果您使用一些新的类定义加载和外部swf,然后卸载它,会发生什么情况?(我的猜测是这些定义仍然有效,但如果没有的话…)谢谢你的回答。是的,我在谷歌上搜索过并发现了这一点,但我希望在AS3中有其他选择。@gltovar:是的,定义仍然存在(很不幸)。@Shanetheat:re。segragated ApplicationDomain:如果卸载ApplicationDomain的根(我假设您可以使用子域),该域的定义是否为gc?这值得一试。如果不尝试,我的猜测是它将取决于用于加载swf的应用程序域。如果您使用
ApplicationDomain.currentDomain
,则卸载后它们应该保持不变,否则,您将信任GC。它仍然不是立即删除某些内容的选项。