|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectjava.lang.ref.Reference<T>
java.lang.ref.PhantomReference<T>
public class PhantomReference<T>
ファントム参照オブジェクトです。ファントム参照オブジェクトがキューに入れられるのは、キューに入れておかないとそれらのリファレントが再生される可能性があるとコレクタが判断したときです。ファントム参照オブジェクトは、ほとんどの場合、Java のファイナライズ機構よりも柔軟な方法で、プリモルテムクリーンアップアクションのスケジューリングを行うために使用されます。
ある時点で、ファントム参照のリファレントが「ファントム到達可能」であるとガベージコレクタが判断した場合、その時点またはそのしばらくあとにガベージコレクタはその参照をキューに入れます。
再生可能なオブジェクトをそのままにしておくために、ファントム参照のリファレントを取り出すことはできません。ファントム参照の get メソッドは、常に null を返します。
ソフト参照および弱参照と違って、ファントム参照はそれらがキューに入れられるときにガベージコレクタによって自動的にクリアされません。ファントム参照を介して到達可能なオブジェクトは、すべてのファントム参照がクリアされるか、ファントム参照自身が到達不可能になるまで到達可能です。
| コンストラクタの概要 | |
|---|---|
PhantomReference(T referent,
ReferenceQueue<? super T> q)
指定されたオブジェクトを参照し、指定されたキューに登録されている新しいファントム参照を作成します。 |
|
| メソッドの概要 | |
|---|---|
T |
get()
参照オブジェクトのリファレントを返します。 |
| クラス java.lang.ref.Reference から継承されたメソッド |
|---|
clear, enqueue, isEnqueued |
| クラス java.lang.Object から継承されたメソッド |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| コンストラクタの詳細 |
|---|
public PhantomReference(T referent,
ReferenceQueue<? super T> q)
null キューでファントム参照を作成することができますが、作成された参照はまったく役に立ちません。作成された参照の get メソッドは常に null を返します。また、キューを持たないので、キューに入りません。
referent - 新しいファントム参照が参照するオブジェクトq - 参照が登録されるキュー。登録が必要ない場合は null| メソッドの詳細 |
|---|
public T get()
null を返します。
Reference<T> 内の getnull
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。