弱参照またはソフト参照を使用するReferenceQueue
場合、オブジェクトが実際にメモリから削除されるのはいつですか? referancequeue.remove
または referancequeue.poll()
メソッドを呼び出す必要がありますか?
例:
ReferenceQueue q = new ReferenceQueue();
WeakReference wr = new WeakReference(object, referenceQueue);
if (pr.isenqueued()) {
// do something
}
またはフォローする必要がありますか?
WeakReference weakref=null;
if ((weakref=q.removed())!=null) {
// do something
}