ConditionPriorityBlockingQueue
public class ConditionPriorityBlockingQueue
extends Object
java.lang.Object | |
↳ | com.android.tradefed.util.ConditionPriorityBlockingQueue <T> |
Поточно-ориентированный класс с операциями типа ERROR(/PriorityBlockingQueue)
который может извлекать объекты, соответствующие определенному условию.
ERROR(/ConcurrentModificationException)
не будет выдан, но итератор также не будет отражать измененное содержимое.Смотрите также:
Резюме
Вложенные классы | |
---|---|
class | ConditionPriorityBlockingQueue.AlwaysMatch <T> |
interface | ConditionPriorityBlockingQueue.IMatcher <T> Интерфейс для определения соответствия элементов какому-либо условию. |
Общественные конструкторы | |
---|---|
ConditionPriorityBlockingQueue () Создает | |
ConditionPriorityBlockingQueue ( c) ConditionPriorityBlockingQueue ( c) Создает |
Публичные методы | |
---|---|
boolean | add (T addedElement) Вставляет указанный элемент в эту очередь. |
T | addUnique ( IMatcher <T> matcher, T object) Добавляет элемент в эту очередь, заменяя любой существующий объект, соответствующий заданному условию |
void | clear () Удаляет все элементы из этой очереди. |
boolean | contains (T object) Определите, содержится ли объект в данный момент в этой очереди. |
getCopy () Получите копию содержимого очереди. | |
iterator () | |
T | poll (long timeout, TimeUnit unit) Извлекает и удаляет минимальный (судя по предоставленному |
T | poll (long timeout, TimeUnit unit, IMatcher <T> matcher) Извлекает и удаляет минимальный (судя по предоставленному |
T | poll ( IMatcher <T> matcher) Извлекает и удаляет минимальный (судя по предоставленному |
T | poll () Извлекает и удаляет заголовок этой очереди. |
boolean | remove (T object) Удаляет элемент из этой очереди. |
int | size () |
T | take () Извлекает и удаляет минимальный (судя по предоставленному элементу |
T | take ( IMatcher <T> matcher) Извлекает и удаляет первый элемент T в очереди, где matcher.matches(T) |
Общественные конструкторы
ConditionPriorityBlockingQueue
public ConditionPriorityBlockingQueue ()
Создает ConditionPriorityBlockingQueue
ConditionPriorityBlockingQueue
public ConditionPriorityBlockingQueue (c)
Создает ConditionPriorityBlockingQueue
Параметры | |
---|---|
c | ERROR(/Comparator) используемая для определения приоритета очереди. |
Публичные методы
Добавлять
public boolean add (T addedElement)
Вставляет указанный элемент в эту очередь. Поскольку очередь не ограничена, этот метод никогда не будет блокироваться.
Параметры | |
---|---|
addedElement | T : добавляемый элемент |
Возврат | |
---|---|
boolean | true |
Броски | |
---|---|
ClassCastException | если указанный элемент не может быть сравнен с элементами, находящимися в настоящее время в очереди с приоритетами, в соответствии с порядком очереди с приоритетами |
NullPointerException | если указанный элемент равен нулю |
addUnique
public T addUnique (IMatcher<T> matcher, T object)
Добавляет элемент в эту очередь, заменяя любой существующий объект, соответствующий заданному условию
Параметры | |
---|---|
matcher | IMatcher : сопоставитель для оценки существующих объектов |
object | T : объект для добавления |
Возврат | |
---|---|
T | замененный объект или null если его нет |
Чисто
public void clear ()
Удаляет все элементы из этой очереди.
содержит
public boolean contains (T object)
Определите, содержится ли объект в данный момент в этой очереди.
Параметры | |
---|---|
object | T : объект, который нужно найти |
Возврат | |
---|---|
boolean | true если данный объект содержится в очереди. false> иначе. |
getCopy
publicgetCopy ()
Получите копию содержимого очереди.
Возврат | |
---|---|
итератор
publiciterator ()
Возврат | |
---|---|
голосование
public T poll (long timeout, TimeUnit unit)
Извлекает и удаляет минимальный (судя по предоставленному элементу ERROR(/Comparator)
T в очереди).
Параметры | |
---|---|
timeout | long : время ожидания, пока элемент станет доступным |
unit | TimeUnit : ERROR(/TimeUnit) тайм-аута |
Возврат | |
---|---|
T | минимальный совпадающий элемент или null если совпадающих элементов нет |
голосование
public T poll (long timeout, TimeUnit unit, IMatcher<T> matcher)
Извлекает и удаляет минимальный (судя по предоставленному элементу ERROR(/Comparator)
T в очереди, где matcher.matches(T) true
.
Параметры | |
---|---|
timeout | long : время ожидания, пока элемент станет доступным |
unit | TimeUnit : ERROR(/TimeUnit) тайм-аута |
matcher | IMatcher : IMatcher для оценки элементов |
Возврат | |
---|---|
T | минимальный совпадающий элемент или null если совпадающих элементов нет |
голосование
public T poll (IMatcher<T> matcher)
Извлекает и удаляет минимальный (судя по предоставленному элементу ERROR(/Comparator)
T в очереди, где matcher.matches(T) true
.
Параметры | |
---|---|
matcher | IMatcher : IMatcher для оценки элементов |
Возврат | |
---|---|
T | минимальный совпадающий элемент или null если совпадающих элементов нет |
голосование
public T poll ()
Извлекает и удаляет заголовок этой очереди.
Возврат | |
---|---|
T | заголовок этой очереди, или null если очередь пуста |
Удалить
public boolean remove (T object)
Удаляет элемент из этой очереди.
Параметры | |
---|---|
object | T : объект для удаления |
Возврат | |
---|---|
boolean | true если данный объект был удален из очереди. false> иначе. |
размер
public int size ()
Возврат | |
---|---|
int | количество элементов в очереди |
брать
public T take ()
Извлекает и удаляет минимальный (судя по предоставленному элементу ERROR(/Comparator)
T в очереди).
Возврат | |
---|---|
T | руководитель этой очереди |
Броски | |
---|---|
InterruptedException | если прервать во время ожидания |
брать
public T take (IMatcher<T> matcher)
Извлекает и удаляет первый элемент T в очереди, где matcher.matches(T) true
, ожидая, если необходимо, пока такой элемент не станет доступным.
Параметры | |
---|---|
matcher | IMatcher : IMatcher для оценки элементов |
Возврат | |
---|---|
T | согласованный элемент |
Броски | |
---|---|
InterruptedException | если прервать во время ожидания |
Контент и образцы кода на этой странице предоставлены по лицензиям. Java и OpenJDK – это зарегистрированные товарные знаки корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2019-10-02 UTC.