Spec-Zone.ru › OpenJDK 24

Класс ReferenceQueue<T>

java.lang.Object
java.lang.ref.ReferenceQueue<T>
Параметры типа:
T - тип объекта ссылки
public class ReferenceQueue<T> extends Object
Очереди ссылок, в которые объекты зарегистрированных ссылок добавляются сборщиком мусора после обнаружения соответствующих изменений доступности.

Влияние на согласованность памяти: Добавление ссылки в очередь (сборщиком мусора или успешным вызовом Reference.enqueue()) предшествует удалению ссылки из очереди методом poll() или remove(long).

С момента:
1.2

Краткое описание конструкторов

Конструктор Описание
ReferenceQueue()
Создаёт новую очередь объектов ссылок.

Краткое описание методов

Модификатор и тип Метод Описание
Reference<? extends T> poll()
Проверяет наличие объекта ссылки в очереди. Если объект доступен немедленно, он удаляется из очереди и возвращается. В противном случае метод немедленно возвращает null.
Reference<? extends T> remove()
Удаляет следующий объект ссылки в этой очереди, блокируясь до тех пор, пока объект не станет доступным.
Reference<? extends T> remove(long timeout)
Удаляет следующий объект ссылки в этой очереди, блокируясь до тех пор, пока объект не станет доступным или не истечёт заданный период ожидания.

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание конструкторов

ReferenceQueue

public ReferenceQueue()
Создаёт новую очередь объектов ссылок.

Подробное описание методов

poll

public Reference<? extends T> poll()
Проверяет наличие объекта ссылки в очереди. Если объект доступен немедленно, он удаляется из очереди и возвращается. В противном случае метод немедленно возвращает null.
Возвращает:
Объект ссылки, если он был немедленно доступен, иначе null
См. также:
  • Reference.enqueue()

remove

public Reference<? extends T> remove(long timeout) throws InterruptedException
Удаляет следующий объект ссылки в этой очереди, блокируясь до тех пор, пока объект не станет доступным или не истечёт заданный период ожидания.

Этот метод не гарантирует реального времени: он планирует ожидание таймаута, как если бы он вызывал метод Object.wait(long).

Параметры:
timeout - Если положительное, заблокировать на срок до timeout миллисекунд, ожидая добавления ссылки в эту очередь. Если ноль, заблокировать неопределённо долго.
Возвращает:
Объект ссылки, если он был доступен в течение заданного периода ожидания, иначе null
Исключения:
IllegalArgumentException - Если значение аргумента таймаута отрицательное
InterruptedException - Если ожидание таймаута прервано
См. также:
  • Reference.enqueue()

remove

public Reference<? extends T> remove() throws InterruptedException
Удаляет следующий объект ссылки в этой очереди, блокируясь до тех пор, пока объект не станет доступным.
Возвращает:
Объект ссылки, блокируясь до тех пор, пока он не станет доступным
Исключения:
InterruptedException - Если ожидание прервано
См. также:
  • Reference.enqueue()

© 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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API