|
Spec-Zone .ru
спецификации, руководства, описания, API
|
E - тип элементов сохранен в этом набореpublic class SynchronousQueue<E> extends AbstractQueue<E> implements BlockingQueue<E>, Serializable
Синхронные очереди подобны каналам рандеву, используемым в CSP и Аде. Они хорошо подходят для проектов handoff, в которых объект, работающий в одном потоке, должен синхронизировать с объектом, работающим в другом потоке, чтобы вручить этому некоторую информацию, событие, или задачу.
Этот class поддерживает дополнительную политику справедливости для того, чтобы упорядочить ожидающие потоки производителя и потребителя. По умолчанию это упорядочивание не гарантируется. Однако, очередь, созданная с набором справедливости к true, предоставляет доступ потоков в порядке FIFO.
Этот class и его iterator реализуют все дополнительные методы Collection и Iterator интерфейсы.
Этот class является элементом Платформы Наборов Java.
| Конструктор и Описание |
|---|
SynchronousQueue()
Создает SynchronousQueue с несправедливой политикой доступа.
|
SynchronousQueue(boolean fair)
Создает SynchronousQueue с указанной политикой справедливости.
|
| Модификатор и Тип | Метод и Описание |
|---|---|
void |
clear()
Ничего не делает.
|
boolean |
contains(Object o)
Всегда возвраты false.
|
boolean |
containsAll(Collection<?> c)
false возвратов, если данный набор не пуст.
|
int |
drainTo(Collection<? super E> c)
Удаляет все доступные элементы из этой очереди и добавляет их к данному набору.
|
int |
drainTo(Collection<? super E> c, int maxElements)
Удаляет самое большее данное число доступных элементов от этой очереди и добавляет их к данному набору.
|
boolean |
isEmpty()
Всегда возвраты true.
|
Iterator<E> |
iterator()
Возвращает пустой iterator, в котором hasNext всегда возвращает false.
|
boolean |
offer(E e)
Вставляет указанный элемент в эту очередь, если другой поток ожидает, чтобы получить это.
|
boolean |
offer(E e, long timeout, TimeUnit unit)
Вставляет указанный элемент в эту очередь, ожидая в случае необходимости до указанного времени ожидания для другого потока, чтобы получить это.
|
E |
peek()
Всегда возвраты null.
|
E |
poll()
Получает и удаляет главу этой очереди, если другой поток в настоящий момент делает элемент доступным.
|
E |
poll(long timeout, TimeUnit unit)
Получает и удаляет главу этой очереди, ожидая в случае необходимости до указанного времени ожидания, для другого потока, чтобы вставить это.
|
void |
put(E e)
Добавляет указанный элемент к этой очереди, ожидая в случае необходимости другого потока, чтобы получить это.
|
int |
remainingCapacity()
Всегда нуль возвратов.
|
boolean |
remove(Object o)
Всегда возвраты false.
|
boolean |
removeAll(Collection<?> c)
Всегда возвраты false.
|
boolean |
retainAll(Collection<?> c)
Всегда возвраты false.
|
int |
size()
Всегда нуль возвратов.
|
E |
take()
Получает и удаляет главу этой очереди, ожидая в случае необходимости другого потока, чтобы вставить это.
|
Объект[] |
toArray()
Возвращает массив нулевой длиной.
|
<T> T[] |
toArray(T[] a)
Устанавливает zeroeth элемент указанного массива к null (если у массива есть ненулевая длина), и возвращает это.
|
add, addAll, element, removetoStringclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitдобавитьaddAll, equals, hashCode, parallelStream, removeIf, spliterator, streamforEachpublic SynchronousQueue()
public SynchronousQueue(boolean fair)
fair - если это правда, потоки ожидания спорят в порядке FIFO на доступ; иначе порядок является неуказанным.public void put(E e) throws InterruptedException
put в интерфейсе BlockingQueue<E>e - элемент, чтобы добавитьInterruptedException - если прервано, ожидаяNullPointerException - если указанный элемент является нулемpublic boolean offer(E e, long timeout, TimeUnit unit) throws InterruptedException
offer в интерфейсе BlockingQueue<E>e - элемент, чтобы добавитьtimeout - сколько времени ожидать перед отказом в модулях unitunit - TimeUnit, определяющий, как интерпретировать параметр timeoutInterruptedException - если прервано, ожидаяNullPointerException - если указанный элемент является нулемpublic boolean offer(E e)
offer в интерфейсе BlockingQueue<E>offer в интерфейсе Queue<E>e - элемент, чтобы добавитьNullPointerException - если указанный элемент является нулемpublic E take() throws InterruptedException
take в интерфейсе BlockingQueue<E>InterruptedException - если прервано, ожидаяpublic E poll(long timeout, TimeUnit unit) throws InterruptedException
poll в интерфейсе BlockingQueue<E>timeout - сколько времени ожидать перед отказом в модулях unitunit - TimeUnit, определяющий, как интерпретировать параметр timeoutInterruptedException - если прервано, ожидаяpublic E poll()
public boolean isEmpty()
isEmpty в интерфейсе Collection<E>isEmpty в class AbstractCollection<E>public int size()
size в интерфейсе Collection<E>size в class AbstractCollection<E>public int remainingCapacity()
remainingCapacity в интерфейсе BlockingQueue<E>public void clear()
clear в интерфейсе Collection<E>clear в class AbstractQueue<E>public boolean contains(Object o)
contains в интерфейсе Collection<E>contains в интерфейсе BlockingQueue<E>contains в class AbstractCollection<E>o - элементpublic boolean remove(Object o)
remove в интерфейсе Collection<E>remove в интерфейсе BlockingQueue<E>remove в class AbstractCollection<E>o - элемент, чтобы удалитьpublic boolean containsAll(Collection<?> c)
containsAll в интерфейсе Collection<E>containsAll в class AbstractCollection<E>c - наборAbstractCollection.contains(Object)public boolean removeAll(Collection<?> c)
removeAll в интерфейсе Collection<E>removeAll в class AbstractCollection<E>c - наборAbstractCollection.remove(Object), AbstractCollection.contains(Object)public boolean retainAll(Collection<?> c)
retainAll в интерфейсе Collection<E>retainAll в class AbstractCollection<E>c - наборAbstractCollection.remove(Object), AbstractCollection.contains(Object)public E peek()
public Iterator<E> iterator()
iterator в интерфейсе Iterable<E>iterator в интерфейсе Collection<E>iterator в class AbstractCollection<E>public Object[] toArray()
toArray в интерфейсе Collection<E>toArray в class AbstractCollection<E>public <T> T[] toArray(T[] a)
toArray в интерфейсе Collection<E>toArray в class AbstractCollection<E>a - массивNullPointerException - если указанный массив является нулемpublic int drainTo(Collection<? super E> c)
BlockingQueuedrainTo в интерфейсе BlockingQueue<E>c - набор, чтобы передать элементы вUnsupportedOperationException - если добавление элементов не поддерживается указанным наборомClassCastException - если class элемента этой очереди препятствует тому, чтобы это было добавлено к указанному наборуNullPointerException - если указанный набор является нулемIllegalArgumentException - если указанный набор является этой очередью, или некоторое свойство элемента этой очереди препятствует тому, чтобы это было добавлено к указанному наборуpublic int drainTo(Collection<? super E> c, int maxElements)
BlockingQueuedrainTo в интерфейсе BlockingQueue<E>c - набор, чтобы передать элементы вmaxElements - максимальное количество элементов, чтобы передатьUnsupportedOperationException - если добавление элементов не поддерживается указанным наборомClassCastException - если class элемента этой очереди препятствует тому, чтобы это было добавлено к указанному наборуNullPointerException - если указанный набор является нулемIllegalArgumentException - если указанный набор является этой очередью, или некоторое свойство элемента этой очереди препятствует тому, чтобы это было добавлено к указанному набору
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92