ConditionPriorityBlockingQueue

public class ConditionPriorityBlockingQueue
extends Object

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


Uma classe thread-safe com operações semelhantes ERROR(/PriorityBlockingQueue) que podem recuperar objetos que correspondem a uma determinada condição.

A iteração também é segura para threads, mas não é consistente. Uma cópia da fila é feita no momento da criação do iterador e essa cópia é usada como destino da iteração. Se a fila for modificada durante a iteração, um ERROR(/ConcurrentModificationException) não será lançado, mas o iterador também não refletirá o conteúdo modificado.

Resumo

Classes aninhadas

class ConditionPriorityBlockingQueue.AlwaysMatch <T>

Um ConditionPriorityBlockingQueue.IMatcher que corresponde a qualquer objeto.

interface ConditionPriorityBlockingQueue.IMatcher <T>

Uma interface para determinar se os elementos correspondem a algum tipo de condição.

Construtores públicos

ConditionPriorityBlockingQueue ()

Cria uma ConditionPriorityBlockingQueue

Os elementos serão priorizados na ordem FIFO.

ConditionPriorityBlockingQueue ( c) ConditionPriorityBlockingQueue ( c)

Cria uma ConditionPriorityBlockingQueue

Métodos públicos

boolean add (T addedElement)

Insere o elemento especificado nesta fila.

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

Adiciona um item a esta fila, substituindo qualquer objeto existente que corresponda a determinada condição

void clear ()

Remove todos os elementos desta fila.

boolean contains (T object)

Determine se um objeto está atualmente contido nesta fila.

getCopy ()

Obtenha uma cópia do conteúdo da fila.

iterator ()

T poll (long timeout, TimeUnit unit)

Recupera e remove o elemento T mínimo (conforme julgado pelo elemento ERROR(/Comparator) fornecido na fila.

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

Recupera e remove o mínimo (conforme julgado pelo elemento ERROR(/Comparator) T fornecido na fila onde matcher.matches(T) é true .

T poll ( IMatcher <T> matcher)

Recupera e remove o mínimo (conforme julgado pelo elemento ERROR(/Comparator) T fornecido na fila onde matcher.matches(T) é true .

T poll ()

Recupera e remove o cabeçalho desta fila.

boolean remove (T object)

Remove um item desta fila.

int size ()
T take ()

Recupera e remove o elemento T mínimo (conforme julgado pelo elemento ERROR(/Comparator) fornecido na fila.

T take ( IMatcher <T> matcher)

Recupera e remove o primeiro elemento T na fila onde matcher.matches(T) é true , aguardando, se necessário, até que tal elemento fique disponível.

Construtores públicos

ConditionPriorityBlockingQueue

public ConditionPriorityBlockingQueue ()

Cria uma ConditionPriorityBlockingQueue

Os elementos serão priorizados na ordem FIFO.

ConditionPriorityBlockingQueue

public ConditionPriorityBlockingQueue ( c)

Cria uma ConditionPriorityBlockingQueue

Parâmetros
c : o ERROR(/Comparator) usado para priorizar a fila.

Métodos públicos

adicionar

public boolean add (T addedElement)

Insere o elemento especificado nesta fila. Como a fila é ilimitada, esse método nunca será bloqueado.

Parâmetros
addedElement T : o elemento a ser adicionado

Devoluções
boolean true

Lança
ClassCastException se o elemento especificado não puder ser comparado com os elementos atualmente na fila de prioridade de acordo com a ordem da fila de prioridade
NullPointerException se o elemento especificado for nulo

adicionarÚnico

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

Adiciona um item a esta fila, substituindo qualquer objeto existente que corresponda a determinada condição

Parâmetros
matcher IMatcher : o matcher para avaliar objetos existentes

object T : o objeto a ser adicionado

Devoluções
T o objeto substituído ou null se nenhum existir

claro

public void clear ()

Remove todos os elementos desta fila.

contém

public boolean contains (T object)

Determine se um objeto está atualmente contido nesta fila.

Parâmetros
object T : o objeto a ser encontrado

Devoluções
boolean true se determinado objeto estiver contido na fila. false> caso contrário.

obterCopiar

public  getCopy ()

Obtenha uma cópia do conteúdo da fila.

Devoluções

iterador

public  iterator ()

Devoluções

enquete

public T poll (long timeout, 
                TimeUnit unit)

Recupera e remove o elemento T mínimo (conforme julgado pelo elemento ERROR(/Comparator) fornecido na fila.

Bloqueia até o tempo timeout para que um elemento fique disponível.

Parâmetros
timeout long : a quantidade de tempo de espera para que um elemento fique disponível

unit TimeUnit : o ERROR(/TimeUnit) do tempo limite

Devoluções
T o elemento mínimo correspondente ou null se não houver elementos correspondentes

enquete

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

Recupera e remove o mínimo (conforme julgado pelo elemento ERROR(/Comparator) T fornecido na fila onde matcher.matches(T) é true .

Bloqueia até o tempo timeout para que um elemento fique disponível.

Parâmetros
timeout long : a quantidade de tempo de espera para que um elemento fique disponível

unit TimeUnit : o ERROR(/TimeUnit) do tempo limite

matcher IMatcher : o IMatcher a ser usado para avaliar elementos

Devoluções
T o elemento mínimo correspondente ou null se não houver elementos correspondentes

enquete

public T poll (IMatcher<T> matcher)

Recupera e remove o mínimo (conforme julgado pelo elemento ERROR(/Comparator) T fornecido na fila onde matcher.matches(T) é true .

Parâmetros
matcher IMatcher : o IMatcher a ser usado para avaliar elementos

Devoluções
T o elemento mínimo correspondente ou null se não houver elementos correspondentes

enquete

public T poll ()

Recupera e remove o cabeçalho desta fila.

Devoluções
T o início desta fila ou null se a fila estiver vazia

remover

public boolean remove (T object)

Remove um item desta fila.

Parâmetros
object T : o objeto a ser removido

Devoluções
boolean true se determinado objeto foi removido da fila. false> caso contrário.

tamanho

public int size ()

Devoluções
int o número de elementos na fila

pegar

public T take ()

Recupera e remove o elemento T mínimo (conforme julgado pelo elemento ERROR(/Comparator) fornecido na fila.

Bloqueia indefinidamente a disponibilização de um elemento.

Devoluções
T o chefe desta fila

Lança
InterruptedException se interrompido enquanto espera

pegar

public T take (IMatcher<T> matcher)

Recupera e remove o primeiro elemento T na fila onde matcher.matches(T) é true , aguardando, se necessário, até que tal elemento fique disponível.

Parâmetros
matcher IMatcher : o IMatcher a ser usado para avaliar elementos

Devoluções
T o elemento correspondente

Lança
InterruptedException se interrompido enquanto espera