在Actionscript 3中是否有可能创建一个弱引用到对象,以便可以进行垃圾回收。 我正在创建一些类来使调试更容易,因此如果它们仅在此处被引用,我不想让这些对象停留在内存中(当然我也不想用回调函数填充代码以删除这些对象)。
Grant Skinner在ActionScript 3的资源管理方面写了一系列优秀的文章,其中在该系列的第三部分中,他介绍了可以用于此类管理的WeakReference和WeakProxyReference辅助类。您可以通过这里和这里查看相关内容。
目前,我已经创建了一个简单的类来利用字典 weakKeys 参数: public class WeakReference { private var dic public function WeakReference(object) { this.dic = new Dictionary(true) this.dic[object] = true } public function get Value() { for (var object in this.dic) { return object } return null } }
trace(1), trace(2);
。它在JS和AS3中都可以使用(除了全局JS对象没有trace
的getter/setter/属性)。 - user5066707