ConditionPriorityBlockingQueue

public class ConditionPriorityBlockingQueue
extends Object

java.lang.Объект
com.android.tradefed.util.ConditionPriorityBlockingQueue<T>


Поточно-ориентированный класс с операциями типа ERROR(/PriorityBlockingQueue) , которые могут извлекать объекты, соответствующие определенному условию.

Итерация также является потокобезопасной, но не согласованной. Копия очереди создается во время создания итератора, и эта копия используется в качестве цели итерации. Если очередь будет изменена во время итерации, ERROR(/ConcurrentModificationException) не будет сгенерировано, но итератор также не будет отражать измененное содержимое.

Смотрите также:

Краткое содержание

Вложенные классы

class ConditionPriorityBlockingQueue.AlwaysMatch <T>

ConditionPriorityBlockingQueue.IMatcher , соответствующий любому объекту.

interface ConditionPriorityBlockingQueue.IMatcher <T>

Интерфейс для определения того, соответствуют ли элементы какому-либо условию.

Публичные конструкторы

ConditionPriorityBlockingQueue ()

Создает очередь ConditionPriorityBlockingQueue

Элементы будут иметь приоритет в порядке FIFO.

ConditionPriorityBlockingQueue ( c) ConditionPriorityBlockingQueue ( c)

Создает очередь ConditionPriorityBlockingQueue

Публичные методы

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)

Извлекает и удаляет минимальный (судя по предоставленному ERROR(/Comparator) элемент T в очереди.

T poll (long timeout, TimeUnit unit, IMatcher <T> matcher)

Извлекает и удаляет минимальный (судя по предоставленному ERROR(/Comparator) элемент T в очереди, где matcher.matches(T) имеет true .

T poll ( IMatcher <T> matcher)

Извлекает и удаляет минимальный (судя по предоставленному ERROR(/Comparator) элемент T в очереди, где matcher.matches(T) имеет true .

T poll ()

Извлекает и удаляет голову этой очереди.

boolean remove (T object)

Удаляет элемент из этой очереди.

int size ()
T take ()

Извлекает и удаляет минимальный (судя по предоставленному ERROR(/Comparator) элемент T в очереди.

T take ( IMatcher <T> matcher)

Извлекает и удаляет первый элемент T в очереди, где matcher.matches(T) имеет значение true , при необходимости ожидая, пока такой элемент не станет доступным.

Публичные конструкторы

ConditionPriorityBlockingQueue

public ConditionPriorityBlockingQueue ()

Создает очередь ConditionPriorityBlockingQueue

Элементы будут иметь приоритет в порядке FIFO.

ConditionPriorityBlockingQueue

public ConditionPriorityBlockingQueue ( c)

Создает очередь ConditionPriorityBlockingQueue

Параметры
c : ERROR(/Comparator) используемая для определения приоритета очереди.

Публичные методы

добавлять

public boolean add (T addedElement)

Вставляет указанный элемент в эту очередь. Поскольку очередь не ограничена, этот метод никогда не будет блокироваться.

Параметры
addedElement T : элемент для добавления

Возвращает
boolean true

Броски
ClassCastException если указанный элемент не может быть сравнен с элементами, находящимися в настоящее время в приоритетной очереди согласно порядку приоритетной очереди
NullPointerException если указанный элемент имеет значение null

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> иначе.

получитькопировать

public  getCopy ()

Получить копию содержимого очереди.

Возвращает

итератор

public  iterator ()

Возвращает

голосование

public T poll (long timeout, 
                TimeUnit unit)

Извлекает и удаляет минимальный (судя по предоставленному ERROR(/Comparator) элемент T в очереди.

Блокирует до истечения времени timeout , чтобы элемент стал доступным.

Параметры
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 , чтобы элемент стал доступным.

Параметры
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 если прервали во время ожидания