- java.lang.Object
-
- java.lang.ref.ReferenceQueue<T>
-
public class ReferenceQueue<T> extends Object
参照キューです。到達可能性が適切に変更されたことが検出されると、登録されている参照オブジェクトはガベージ・コレクタによって参照キューに追加されます。- 導入されたバージョン:
- 1.2
-
-
コンストラクタのサマリー
コンストラクタ コンストラクタ 説明 ReferenceQueue()
新しい参照オブジェクト・キューを構築します。
-
メソッドのサマリー
すべてのメソッド インスタンス・メソッド 具象メソッド 修飾子と型 メソッド 説明 Reference<? extends T>
poll()
このキューをポーリングして、参照オブジェクトが利用可能かどうかを確認します。Reference<? extends T>
remove()
このキューの次の参照オブジェクトを削除します。参照オブジェクトが利用可能になるまでブロックされます。Reference<? extends T>
remove(long timeout)
このキューの次の参照オブジェクトを削除します。参照オブジェクトが利用可能になるか、指定されたタイム・アウトの期限が切れるまでブロックします。
-
-
-
メソッドの詳細
-
poll
public Reference<? extends T> poll()
このキューをポーリングして、参照オブジェクトが利用可能かどうかを確認します。 参照オブジェクトが遅延なしで利用可能な場合、それがキューから削除されて、返されます。 それ以外の場合、このメソッドは即座にnull
を返します。- 戻り値:
- 利用可能な参照オブジェクトがあった場合はその参照オブジェクト、そうでない場合は
null
-
remove
public Reference<? extends T> remove(long timeout) throws IllegalArgumentException, InterruptedException
このキューの次の参照オブジェクトを削除します。参照オブジェクトが利用可能になるか、指定されたタイム・アウトの期限が切れるまでブロックします。このメソッドはリアルタイム保証を行いません。
Object.wait(long)
メソッドを呼び出した場合と同様にタイム・アウトのスケジュールを作成します。- パラメータ:
timeout
- 値が正の場合、このキューに参照が追加されるのを待つ間、timeout
ミリ秒の間ブロックされる。 0の場合、無期限にブロックされる。- 戻り値:
- 指定されたタイム・アウト期間に利用可能になった場合は参照オブジェクト、そうでない場合は
null
- 例外:
IllegalArgumentException
- timeout引数の値が負の場合InterruptedException
- タイム・アウト待機中に割り込まれた場合
-
remove
public Reference<? extends T> remove() throws InterruptedException
このキューの次の参照オブジェクトを削除します。参照オブジェクトが利用可能になるまでブロックされます。- 戻り値:
- 参照オブジェクト。1つが利用可能になるまでブロックを行う
- 例外:
InterruptedException
- 待機中に割り込まれた場合
-
-