【发布时间】:2008-11-03 12:38:12
【问题描述】:
是否可以在 Actionscript 3 中创建对对象的弱引用,以便对其进行垃圾回收。
我正在创建一些类以使调试更容易,因此如果仅在此处引用它们,我不希望对象在内存中徘徊(当然我不想用回调填充代码以删除对象)
【问题讨论】:
标签: apache-flex flash actionscript-3 garbage-collection weak-references
是否可以在 Actionscript 3 中创建对对象的弱引用,以便对其进行垃圾回收。
我正在创建一些类以使调试更容易,因此如果仅在此处引用它们,我不希望对象在内存中徘徊(当然我不想用回调填充代码以删除对象)
【问题讨论】:
标签: apache-flex flash actionscript-3 garbage-collection weak-references
Grant Skinner 在resource management in ActionScript 3 上撰写了一系列出色的文章,在该系列的第三部分中,他介绍了可用于此目的的the WeakReference and the WeakProxyReference 辅助类。
【讨论】:
现在我创建了一个简单的类来利用 Dictionary 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/property)。