Spec-Zone .ru
спецификации, руководства, описания, API
|
E
- тип элементов сохранен в этом набореpublic class DelayQueue<E extends Delayed> extends AbstractQueue<E> implements BlockingQueue<E>
Этот класс и его iterator реализуют все дополнительные методы Collection
и Iterator
интерфейсы.
Этот класс является элементом Платформы Наборов Java.
Конструктор и Описание |
---|
DelayQueue()
Создает новый DelayQueue, который первоначально пуст.
|
DelayQueue(Collection<? extends E> c)
Создает DelayQueue, первоначально содержащий элементы данного набора
Delayed экземпляры. |
Модификатор и Тип | Метод и Описание |
---|---|
boolean |
add(E e)
Вставляет указанный элемент в эту очередь задержки.
|
void |
clear()
Атомарно удаляет все элементы от этой очереди задержки.
|
int |
drainTo(Collection<? super E> c)
Удаляет все доступные элементы из этой очереди и добавляет их к данному набору.
|
int |
drainTo(Collection<? super E> c, int maxElements)
Удаляет самое большее данное число доступных элементов от этой очереди и добавляет их к данному набору.
|
Iterator<E> |
iterator()
Возвращает iterator по всем элементам (и истекший и неистекший) в этой очереди.
|
boolean |
offer(E e)
Вставляет указанный элемент в эту очередь задержки.
|
boolean |
offer(E e, long timeout, TimeUnit unit)
Вставляет указанный элемент в эту очередь задержки.
|
E |
peek()
Получает, но не удаляет, глава этой очереди, или возвращает null, если эта очередь пуста.
|
E |
poll()
Получает и удаляет главу этой очереди, или возвращает null, если у этой очереди нет никаких элементов с задержкой с истекшим сроком.
|
E |
poll(long timeout, TimeUnit unit)
Получает и удаляет главу этой очереди, ожидая в случае необходимости, пока элемент с задержкой с истекшим сроком не доступен на этой очереди, или указанное время ожидания истекает.
|
void |
put(E e)
Вставляет указанный элемент в эту очередь задержки.
|
int |
remainingCapacity()
Всегда Integer.MAX_VALUE возвратов, потому что DelayQueue не является ограниченной емкостью.
|
boolean |
remove(Object o)
Удаляет единственный экземпляр указанного элемента от этой очереди, если это присутствует, истекло ли это.
|
int |
size()
Возвращает число элементов в этом наборе.
|
E |
take()
Получает и удаляет главу этой очереди, ожидая в случае необходимости, пока элемент с задержкой с истекшим сроком не доступен на этой очереди.
|
Объект[] |
toArray()
Возвращает массив, содержащий все элементы в этой очереди.
|
<T> T[] |
toArray(T[] a)
Возвращает массив, содержащий все элементы в этой очереди; тип времени выполнения возвращенного массива является типом указанного массива.
|
addAll, element, remove
contains, containsAll, isEmpty, removeAll, retainAll, toString
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
содержит
public DelayQueue()
public DelayQueue(Collection<? extends E> c)
Delayed
экземпляры.c
- набор элементов, чтобы первоначально содержатьNullPointerException
- если указанный набор или какой-либо из его элементов являются нулемpublic boolean add(E e)
add
в интерфейсе Collection<E extends Delayed>
add
в интерфейсе BlockingQueue<E extends Delayed>
add
в интерфейсе Queue<E extends Delayed>
add
в классе AbstractQueue<E extends Delayed>
e
- элемент, чтобы добавитьCollection.add(E)
)NullPointerException
- если указанный элемент является нулемpublic boolean offer(E e)
offer
в интерфейсе BlockingQueue<E extends Delayed>
offer
в интерфейсе Queue<E extends Delayed>
e
- элемент, чтобы добавитьNullPointerException
- если указанный элемент является нулемpublic void put(E e)
put
в интерфейсе BlockingQueue<E extends Delayed>
e
- элемент, чтобы добавитьNullPointerException
- если указанный элемент является нулемpublic boolean offer(E e, long timeout, TimeUnit unit)
offer
в интерфейсе BlockingQueue<E extends Delayed>
e
- элемент, чтобы добавитьtimeout
- Этот параметр игнорируется, поскольку метод никогда не блокируетunit
- Этот параметр игнорируется, поскольку метод никогда не блокируетNullPointerException
- если указанный элемент является нулемpublic E poll()
public E take() throws InterruptedException
take
в интерфейсе BlockingQueue<E extends Delayed>
InterruptedException
- если прервано, ожидаяpublic E poll(long timeout, TimeUnit unit) throws InterruptedException
poll
в интерфейсе BlockingQueue<E extends Delayed>
timeout
- сколько времени ожидать перед отказом в модулях unitunit
- TimeUnit, определяющий, как интерпретировать параметр timeoutInterruptedException
- если прервано, ожидаяpublic E peek()
public int size()
Collection
size
в интерфейсе Collection<E extends Delayed>
size
в классе AbstractCollection<E extends Delayed>
public int drainTo(Collection<? super E> c)
BlockingQueue
drainTo
в интерфейсе BlockingQueue<E extends Delayed>
c
- набор, чтобы передать элементы вUnsupportedOperationException
- если добавление элементов не поддерживается указанным наборомClassCastException
- если класс элемента этой очереди препятствует тому, чтобы это было добавлено к указанному наборуNullPointerException
- если указанный набор является нулемIllegalArgumentException
- если указанный набор является этой очередью, или некоторое свойство элемента этой очереди препятствует тому, чтобы это было добавлено к указанному наборуpublic int drainTo(Collection<? super E> c, int maxElements)
BlockingQueue
drainTo
в интерфейсе BlockingQueue<E extends Delayed>
c
- набор, чтобы передать элементы вmaxElements
- максимальное количество элементов, чтобы передатьUnsupportedOperationException
- если добавление элементов не поддерживается указанным наборомClassCastException
- если класс элемента этой очереди препятствует тому, чтобы это было добавлено к указанному наборуNullPointerException
- если указанный набор является нулемIllegalArgumentException
- если указанный набор является этой очередью, или некоторое свойство элемента этой очереди препятствует тому, чтобы это было добавлено к указанному наборуpublic void clear()
clear
в интерфейсе Collection<E extends Delayed>
clear
в классе AbstractQueue<E extends Delayed>
public int remainingCapacity()
remainingCapacity
в интерфейсе BlockingQueue<E extends Delayed>
public Object[] toArray()
Возвращенный массив будет "безопасен" в этом, никакие ссылки на него не сохраняются этой очередью. (Другими словами этот метод должен выделить новый массив). Вызывающая сторона таким образом свободна изменить возвращенный массив.
Этот метод действует как мост между основанными на массиве и основанными на наборе API.
toArray
в интерфейсе Collection<E extends Delayed>
toArray
в классе AbstractCollection<E extends Delayed>
public <T> T[] toArray(T[] a)
Если эта очередь помещается в указанный массив с комнатой, чтобы сэкономить (то есть, у массива есть больше элементов чем эта очередь), элемент в массиве сразу после конца очереди устанавливается в null.
Как toArray()
метод, этот метод действует как мост между основанными на массиве и основанными на наборе API. Далее, этот метод позволяет точное управление типом времени выполнения выходного массива, и, при определенных обстоятельствах, может использоваться, чтобы сохранить затраты выделения.
Следующий код может использоваться, чтобы вывести очередь задержки в недавно выделенный массив Delayed:
Delayed[] a = q.toArray(new Delayed[0]);Отметьте, что toArray(new Object[0]) идентичен в функции toArray().
toArray
в интерфейсе Collection<E extends Delayed>
toArray
в классе AbstractCollection<E extends Delayed>
a
- массив, в который должны быть сохранены элементы очереди, если это является достаточно большим; иначе, новый массив того же самого типа времени выполнения выделяется с этой цельюArrayStoreException
- если тип времени выполнения указанного массива не является супертипом типа времени выполнения каждого элемента в этой очередиNullPointerException
- если указанный массив является нулемpublic boolean remove(Object o)
remove
в интерфейсе Collection<E extends Delayed>
remove
в интерфейсе BlockingQueue<E extends Delayed>
remove
в классе AbstractCollection<E extends Delayed>
o
- элемент, который будет удален из этого набора, если существующийpublic Iterator<E> iterator()
Возвращенный iterator "слабо непротиворечивый" iterator, который никогда не будет бросать ConcurrentModificationException
, и гарантии, чтобы пересечь элементы, поскольку они существовали на конструкцию iterator, и может (но не гарантироваться), отражают любые модификации, последующие за конструкцией.
Для дальнейшей ссылки API и документации разработчика, см.
Авторское право © 1993, 2011, Oracle и/или его филиалы. Все права защищены.