Actionscript 3 でオブジェクトへの弱い参照を作成して、ガベージ コレクションを実行することは可能ですか。
デバッグを容易にするためにいくつかのクラスを作成しているので、オブジェクトがここでのみ参照されている場合は、オブジェクトがメモリ内にぶら下がることは望ましくありません (もちろん、オブジェクトを削除するためのコールバックでコードを埋めたくありません)。
Actionscript 3 でオブジェクトへの弱い参照を作成して、ガベージ コレクションを実行することは可能ですか。
デバッグを容易にするためにいくつかのクラスを作成しているので、オブジェクトがここでのみ参照されている場合は、オブジェクトがメモリ内にぶら下がることは望ましくありません (もちろん、オブジェクトを削除するためのコールバックでコードを埋めたくありません)。
Grant Skinner は、ActionScript 3 でのリソース管理に関する優れた一連の記事を執筆しており、そのシリーズの第 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
}
}