Класс ReferenceQueue<T>
- Параметры типа:
T- тип объекта ссылки
public class ReferenceQueue<T> extends Object
Влияние на согласованность памяти: Добавление ссылки в очередь (сборщиком мусора или успешным вызовом Reference.enqueue()) предшествует удалению ссылки из очереди методом poll() или remove(long).
- С момента:
- 1.2
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
ReferenceQueue() |
Создаёт новую очередь объектов ссылок. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
Reference |
poll() |
Проверяет наличие объекта ссылки в очереди. Если объект доступен немедленно, он удаляется из очереди и возвращается. В противном случае метод немедленно возвращает null. |
Reference |
remove() |
Удаляет следующий объект ссылки в этой очереди, блокируясь до тех пор, пока объект не станет доступным. |
Reference |
remove |
Удаляет следующий объект ссылки в этой очереди, блокируясь до тех пор, пока объект не станет доступным или не истечёт заданный период ожидания. |
Подробное описание конструкторов
ReferenceQueue
public ReferenceQueue()
Подробное описание методов
poll
public Reference<? extends T> poll()
null.- Возвращает:
- Объект ссылки, если он был немедленно доступен, иначе
null - См. также:
remove
public Reference<? extends T> remove(long timeout) throws InterruptedException
Этот метод не гарантирует реального времени: он планирует ожидание таймаута, как если бы он вызывал метод Object.wait(long).
- Параметры:
-
timeout- Если положительное, заблокировать на срок доtimeoutмиллисекунд, ожидая добавления ссылки в эту очередь. Если ноль, заблокировать неопределённо долго. - Возвращает:
- Объект ссылки, если он был доступен в течение заданного периода ожидания, иначе
null - Исключения:
-
IllegalArgumentException- Если значение аргумента таймаута отрицательное -
InterruptedException- Если ожидание таймаута прервано - См. также:
remove
public Reference<? extends T> remove() throws InterruptedException
- Возвращает:
- Объект ссылки, блокируясь до тех пор, пока он не станет доступным
- Исключения:
-
InterruptedException- Если ожидание прервано - См. также:
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://download.java.net/java/early_access/jdk24/docs/api/java.base/java/lang/ref/ReferenceQueue.html