ConditionPriorityBlockingQueue

public class ConditionPriorityBlockingQueue
extends Object

java.lang.Object
   ↳ com.android.tradefed.util.ConditionPriorityBlockingQueue<T>


Una clase segura para subprocesos con operaciones similares a ERROR(/PriorityBlockingQueue) que pueden recuperar objetos que coinciden con una condición determinada.

La iteración también tiene protección de subprocesos, pero no es coherente. Se crea una copia de la cola en el momento de la creación del iterador, y esa copia se usa como destino de la iteración. Si se modifica la cola durante la iteración, no se arrojará un ERROR(/ConcurrentModificationException), pero el iterador tampoco reflejará el contenido modificado.

Resumen

Clases anidadas

class ConditionPriorityBlockingQueue.AlwaysMatch<T>

Un ConditionPriorityBlockingQueue.IMatcher que coincide con cualquier objeto. 

interface ConditionPriorityBlockingQueue.IMatcher<T>

Es una interfaz para determinar si los elementos coinciden con algún tipo de condición. 

Constructores públicos

ConditionPriorityBlockingQueue()

Crea un ConditionPriorityBlockingQueue.

Los elementos se priorizarán en orden FIFO.

ConditionPriorityBlockingQueue( c)

Crea un ConditionPriorityBlockingQueue.

Métodos públicos

boolean add(T addedElement)

Inserta el elemento especificado en esta cola.

T addUnique(IMatcher<T> matcher, T object)

Agrega un elemento a esta cola y reemplaza cualquier objeto existente que coincida con la condición determinada.

void clear()

Quita todos los elementos de esta cola.

boolean contains(T object)

Determina si un objeto se encuentra actualmente en esta cola.

getCopy()

Obtén una copia del contenido de la cola.

iterator()

T poll(long timeout, TimeUnit unit)

Recupera y quita el valor mínimo (según lo juzgue el elemento ERROR(/Comparator) T proporcionado en la fila).

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

Recupera y quita el mínimo (según lo juzgue el elemento ERROR(/Comparator) proporcionado T en la fila donde matcher.matches(T) es true).

T poll(IMatcher<T> matcher)

Recupera y quita el mínimo (según lo juzgue el elemento ERROR(/Comparator) proporcionado T en la fila donde matcher.matches(T) es true).

T poll()

Recupera y quita el elemento superior de esta cola.

boolean remove(T object)

Quita un elemento de esta fila.

int size()
T take()

Recupera y quita el valor mínimo (según lo juzgue el elemento ERROR(/Comparator) T proporcionado en la fila).

T take(IMatcher<T> matcher)

Recupera y quita el primer elemento T de la cola en la que matcher.matches(T) es true y, si es necesario, espera hasta que ese elemento esté disponible.

Constructores públicos

ConditionPriorityBlockingQueue

public ConditionPriorityBlockingQueue ()

Crea un ConditionPriorityBlockingQueue.

Los elementos se priorizarán en orden FIFO.

ConditionPriorityBlockingQueue

public ConditionPriorityBlockingQueue ( c)

Crea un ConditionPriorityBlockingQueue.

Parámetros
c : Es el ERROR(/Comparator) que se usa para priorizar la cola.

Métodos públicos

agregar

public boolean add (T addedElement)

Inserta el elemento especificado en esta cola. Como la cola no tiene límites, este método nunca se bloqueará.

Parámetros
addedElement T: Es el elemento que se agregará.

Muestra
boolean true

Arroja
ClassCastException si el elemento especificado no se puede comparar con los elementos que se encuentran actualmente en la cola de prioridad según el orden de la cola de prioridad
NullPointerException si el elemento especificado es nulo

addUnique

public T addUnique (IMatcher<T> matcher, 
                T object)

Agrega un elemento a esta cola y reemplaza cualquier objeto existente que coincida con la condición determinada.

Parámetros
matcher IMatcher: Es el comparador para evaluar objetos existentes.

object T: Es el objeto que se agregará.

Muestra
T el objeto reemplazado o null si no existe ninguno

borrar

public void clear ()

Quita todos los elementos de esta cola.

contiene

public boolean contains (T object)

Determina si un objeto se encuentra actualmente en esta cola.

Parámetros
object T: Es el objeto que se debe encontrar.

Muestra
boolean true si el objeto determinado está contenido en la fila. false> en caso contrario.

getCopy

public  getCopy ()

Obtén una copia del contenido de la cola.

Muestra

iterador

public  iterator ()

Muestra

encuesta

public T poll (long timeout, 
                TimeUnit unit)

Recupera y quita el valor mínimo (según lo juzgue el elemento ERROR(/Comparator) T proporcionado en la fila).

Bloquea hasta timeout tiempo para que un elemento esté disponible.

Parámetros
timeout long: Es la cantidad de tiempo que se espera a que un elemento esté disponible.

unit TimeUnit: Es el ERROR(/TimeUnit) del tiempo de espera.

Muestra
T el elemento coincidente mínimo o null si no hay elementos coincidentes

encuesta

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

Recupera y quita el mínimo (según lo juzgue el elemento ERROR(/Comparator) T proporcionado en la fila en la que matcher.matches(T) es true).

Bloquea hasta timeout tiempo para que un elemento esté disponible.

Parámetros
timeout long: Es la cantidad de tiempo que se espera a que un elemento esté disponible.

unit TimeUnit: Es el ERROR(/TimeUnit) del tiempo de espera.

matcher IMatcher: Es el IMatcher que se usará para evaluar los elementos.

Muestra
T el elemento coincidente mínimo o null si no hay elementos coincidentes

encuesta

public T poll (IMatcher<T> matcher)

Recupera y quita el mínimo (según lo juzgue el elemento ERROR(/Comparator) T proporcionado en la fila en la que matcher.matches(T) es true).

Parámetros
matcher IMatcher: Es el IMatcher que se usará para evaluar los elementos.

Muestra
T el elemento coincidente mínimo o null si no hay elementos coincidentes

encuesta

public T poll ()

Recupera y quita el elemento superior de esta cola.

Muestra
T el elemento superior de esta fila, o null si la fila está vacía

quitarlo

public boolean remove (T object)

Quita un elemento de esta fila.

Parámetros
object T: Es el objeto que se quitará.

Muestra
boolean true si se quitó un objeto de la fila. false> en caso contrario.

size

public int size ()

Muestra
int la cantidad de elementos en la cola

tomar

public T take ()

Recupera y quita el valor mínimo (según lo juzgue el elemento ERROR(/Comparator) T proporcionado en la fila).

Bloquea indefinidamente un elemento hasta que esté disponible.

Muestra
T el elemento superior de esta cola

Arroja
InterruptedException si se interrumpe mientras esperas

tomar

public T take (IMatcher<T> matcher)

Recupera y quita el primer elemento T de la cola en la que matcher.matches(T) es true y, si es necesario, espera hasta que ese elemento esté disponible.

Parámetros
matcher IMatcher: Es el IMatcher que se usará para evaluar los elementos.

Muestra
T el elemento coincidente

Arroja
InterruptedException si se interrumpe mientras esperas