ConditionPriorityBlockingQueue
  public
  
  
  
  class
  ConditionPriorityBlockingQueue
  
    extends Object
  
  
  
  
  
  
| java.lang.Object | |
| ↳ | com.android.tradefed.util.ConditionPriorityBlockingQueue<T> | 
Uma classe segura para threads com operações semelhantes a ERROR(/PriorityBlockingQueue) que podem recuperar objetos
que correspondem a uma determinada condição.
 
 A iteração também é thread-safe, mas não é consistente. Uma cópia da fila é feita no momento da criação
 do iterador, e essa cópia é usada como o destino da iteração. Se a fila for modificada durante
a iteração, uma ERROR(/ConcurrentModificationException) não será gerada, mas o iterador
 também não vai refletir o conteúdo modificado.
 
Confira também:
Resumo
| Classes aninhadas | |
|---|---|
| 
        
        
        
        
        class | ConditionPriorityBlockingQueue.AlwaysMatch<T>Um  | 
| 
        
        
        
        
        interface | ConditionPriorityBlockingQueue.IMatcher<T>Uma interface para determinar se os elementos correspondem a algum tipo de condição. | 
| Construtores públicos | |
|---|---|
| 
      ConditionPriorityBlockingQueue()
      Cria um  Os elementos serão priorizados na ordem PEPS. | |
| 
      ConditionPriorityBlockingQueue(Cria um  | |
| Métodos públicos | |
|---|---|
| 
        
        
        
        
        
        boolean | 
      add(T addedElement)
      Insere o elemento especificado nessa fila. | 
| 
        
        
        
        
        
        T | 
      addUnique(IMatcher<T> matcher, T object)
      Adiciona um item a essa fila, substituindo qualquer objeto existente que corresponda à condição. | 
| 
        
        
        
        
        
        void | 
      clear()
      Remove todos os elementos dessa fila. | 
| 
        
        
        
        
        
        boolean | 
      contains(T object)
      Determine se um objeto está contido na fila. | 
| 
        
        
        
        
        
         | 
      getCopy()
      Receba uma cópia do conteúdo da fila. | 
| 
        
        
        
        
        
         | 
      iterator()
      
 | 
| 
        
        
        
        
        
        T | 
      poll(long timeout, TimeUnit unit)
      Recupera e remove o mínimo (julgado pelo elemento  | 
| 
        
        
        
        
        
        T | 
      poll(long timeout, TimeUnit unit, IMatcher<T> matcher)
      Recupera e remove o mínimo (conforme avaliado pelo elemento  | 
| 
        
        
        
        
        
        T | 
      poll(IMatcher<T> matcher)
      Recupera e remove o mínimo (julgado pelo elemento  | 
| 
        
        
        
        
        
        T | 
      poll()
      Recupera e remove o cabeçalho dessa fila. | 
| 
        
        
        
        
        
        boolean | 
      remove(T object)
      Remove um item dessa fila. | 
| 
        
        
        
        
        
        int | 
      size()
       | 
| 
        
        
        
        
        
        T | 
      take()
      Recupera e remove o mínimo (conforme avaliado pelo elemento  | 
| 
        
        
        
        
        
        T | 
      take(IMatcher<T> matcher)
      Recupera e remove o primeiro elemento T na fila em que matcher.matches(T) é
  | 
Construtores públicos
ConditionPriorityBlockingQueue
public ConditionPriorityBlockingQueue ()
Cria um ConditionPriorityBlockingQueue
 
Os elementos serão priorizados na ordem PEPS.
ConditionPriorityBlockingQueue
public ConditionPriorityBlockingQueue (c) 
Cria um ConditionPriorityBlockingQueue
| Parâmetros | |
|---|---|
| c | : oERROR(/Comparator)usado para priorizar a fila. | 
Métodos públicos
adicionar
public boolean add (T addedElement)
Insere o elemento especificado nessa fila. Como a fila não tem limite, esse método nunca será bloqueado.
| Parâmetros | |
|---|---|
| addedElement | T: o elemento a ser adicionado | 
| Retorna | |
|---|---|
| boolean | true | 
| Gera | |
|---|---|
| ClassCastException | se o elemento especificado não puder ser comparado com os elementos atualmente na fila de prioridade de acordo com a ordem dela | 
| NullPointerException | se o elemento especificado for nulo | 
addUnique
public T addUnique (IMatcher<T> matcher, T object)
Adiciona um item a essa fila, substituindo qualquer objeto existente que corresponda à condição.
| Parâmetros | |
|---|---|
| matcher | IMatcher: o comparador para avaliar objetos existentes | 
| object | T: o objeto a ser adicionado | 
| Retorna | |
|---|---|
| T | o objeto substituído ou nullse nenhum existir | 
limpar
public void clear ()
Remove todos os elementos dessa fila.
contém
public boolean contains (T object)
Determine se um objeto está contido na fila.
| Parâmetros | |
|---|---|
| object | T: o objeto a ser encontrado | 
| Retorna | |
|---|---|
| boolean | true, se o objeto especificado estiver na fila.false>caso contrário. | 
getCopy
publicgetCopy () 
Receba uma cópia do conteúdo da fila.
| Retorna | |
|---|---|
|  | |
iterador
publiciterator () 
| Retorna | |
|---|---|
|  | |
pesquisa
public T poll (long timeout, 
                TimeUnit unit)Recupera e remove o mínimo (conforme avaliado pelo elemento ERROR(/Comparator) T fornecido na
 fila.
 
Bloqueia até timeout vezes para que um elemento fique disponível.
| Parâmetros | |
|---|---|
| timeout | long: o tempo de espera para que um elemento fique disponível | 
| unit | TimeUnit: oERROR(/TimeUnit)do tempo limite | 
| Retorna | |
|---|---|
| T | o elemento mínimo correspondente ou nullse não houver elementos correspondentes | 
pesquisa
public T poll (long timeout, 
                TimeUnit unit, 
                IMatcher<T> matcher)Recupera e remove o mínimo (conforme avaliado pelo elemento ERROR(/Comparator) T fornecido na
 fila em que matcher.matches(T) é true.
 
Bloqueia até timeout vezes para que um elemento fique disponível.
| Parâmetros | |
|---|---|
| timeout | long: o tempo de espera para que um elemento fique disponível | 
| unit | TimeUnit: oERROR(/TimeUnit)do tempo limite | 
| matcher | IMatcher: oIMatchera ser usado para avaliar elementos | 
| Retorna | |
|---|---|
| T | o elemento mínimo correspondente ou nullse não houver elementos correspondentes | 
pesquisa
public T poll (IMatcher<T> matcher)
Recupera e remove o mínimo (conforme avaliado pelo elemento ERROR(/Comparator) T fornecido na
 fila em que matcher.matches(T) é true.
| Parâmetros | |
|---|---|
| matcher | IMatcher: oIMatchera ser usado para avaliar elementos | 
| Retorna | |
|---|---|
| T | o elemento mínimo correspondente ou nullse não houver elementos correspondentes | 
pesquisa
public T poll ()
Recupera e remove o cabeçalho dessa fila.
| Retorna | |
|---|---|
| T | a cabeça da fila ou nullse ela estiver vazia | 
remove
public boolean remove (T object)
Remove um item dessa fila.
| Parâmetros | |
|---|---|
| object | T: o objeto a ser removido | 
| Retorna | |
|---|---|
| boolean | truese o objeto foi removido da fila.false>caso contrário. | 
size
public int size ()
| Retorna | |
|---|---|
| int | o número de elementos na fila | 
tomar
public T take ()
Recupera e remove o mínimo (conforme avaliado pelo elemento ERROR(/Comparator) T fornecido na
 fila.
 
Bloqueia indefinidamente para que um elemento fique disponível.
| Retorna | |
|---|---|
| T | a cabeça da fila | 
| Gera | |
|---|---|
| InterruptedException | se for interrompido durante a espera | 
tomar
public T take (IMatcher<T> matcher)
Recupera e remove o primeiro elemento T na fila em que matcher.matches(T) é
 true, aguardando, se necessário, até que esse elemento fique disponível.
| Parâmetros | |
|---|---|
| matcher | IMatcher: oIMatchera ser usado para avaliar elementos | 
| Retorna | |
|---|---|
| T | o elemento correspondente | 
| Gera | |
|---|---|
| InterruptedException | se for interrompido durante a espera | 
