- java.lang.Object
- 
- java.lang.ref.Reference<T>
- 
- java.lang.ref.PhantomReference<T>
 
 
- 
 public class PhantomReference<T> extends Reference<T> ファントム参照オブジェクトです。ファントム参照オブジェクトがキューに入れられるのは、キューに入れておかないとそれらのリファレントが再生される可能性があるとコレクタが判断したときです。 幻の参照は、死後のクリーンアップ・アクションをスケジュールするために最も頻繁に使用されます。ある時点でオブジェクトが「ファントム到達可能」であるとガベージ・コレクタが判断したとします。 その時点で、そのオブジェクトへのすべてのファントム参照と、そのオブジェクトに到達可能な他のファントム到達可能オブジェクトへのすべてのファントム参照を原子的にクリアします。 同時に、または後で、参照キューに登録されたそれらの新たにクリアされたファントム参照をエンキューします。 再生可能なオブジェクトをそのままにしておくために、ファントム参照のリファレントを取り出すことはできません。ファントム参照の getメソッドは、常にnullを返します。- 導入されたバージョン:
- 1.2
 
- 
- 
コンストラクタのサマリーコンストラクタ コンストラクタ 説明 PhantomReference(T referent, ReferenceQueue<? super T> q)指定されたオブジェクトを参照し、指定されたキューに登録されている新しいファントム参照を作成します。
 
- 
- 
- 
コンストラクタの詳細- 
PhantomReferencepublic PhantomReference(T referent, ReferenceQueue<? super T> q) 指定されたオブジェクトを参照し、指定されたキューに登録されている新しいファントム参照を作成します。nullキューでファントム・リファレンスを作成することは可能ですが、そのようなリファレンスはまったく役に立たない: そのgetメソッドは常にnullを返し、キューを持たないのでエンキューされません。- パラメータ:
- referent- 新しいファントム参照が参照するオブジェクト
- q- 参照が登録されるキュー。登録が必要ない場合は- null
 
 
- 
 
-