Google is committed to advancing racial equity for Black communities. See how.
Questa pagina è stata tradotta dall'API Cloud Translation.
Switch to English

ConditionPriorityBlockingQueue

public class ConditionPriorityBlockingQueue
extends Object

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


Una classe thread-safe con operazioni simili a ERROR(/PriorityBlockingQueue) grado di recuperare oggetti che soddisfano una determinata condizione.

L'iterazione è anche thread-safe, ma non coerente. Una copia della coda viene creata al momento della creazione dell'iteratore e quella copia viene utilizzata come destinazione dell'iterazione. Se la coda viene modificata durante l'iterazione, non verrà generato un ERROR(/ConcurrentModificationException) , ma anche l'iteratore non rifletterà il contenuto modificato.

Sommario

Classi nidificate

class ConditionPriorityBlockingQueue.AlwaysMatch <T>

Un ConditionPriorityBlockingQueue.IMatcher che corrisponde a qualsiasi oggetto.

interface ConditionPriorityBlockingQueue.IMatcher <T>

Un'interfaccia per determinare se gli elementi corrispondono a una sorta di condizione.

Costruttori pubblici

ConditionPriorityBlockingQueue ()

Crea un ConditionPriorityBlockingQueue

Agli elementi verrà assegnata la priorità in ordine FIFO.

ConditionPriorityBlockingQueue ( c) ConditionPriorityBlockingQueue ( c)

Crea un ConditionPriorityBlockingQueue

Metodi pubblici

boolean add (T addedElement)

Inserisce l'elemento specificato in questa coda.

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

Aggiunge un elemento a questa coda, sostituendo qualsiasi oggetto esistente che corrisponde a una determinata condizione

void clear ()

Rimuove tutti gli elementi da questa coda.

boolean contains (T object)

Determina se un oggetto è attualmente contenuto in questa coda.

getCopy ()

Ottieni una copia del contenuto della coda.

iterator ()

T poll (long timeout, TimeUnit unit)

Recupera e rimuove l'elemento T minimo (come giudicato dall'elemento ERROR(/Comparator) fornito nella coda.

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

Recupera e rimuove il minimo (come giudicato dall'elemento ERROR(/Comparator) fornito T nella coda in cui matcher.matches(T) è true .

T poll ( IMatcher <T> matcher)

Recupera e rimuove il minimo (come giudicato dall'elemento ERROR(/Comparator) fornito T nella coda in cui matcher.matches(T) è true .

T poll ()

Recupera e rimuove il capo di questa coda.

boolean remove (T object)

Rimuove un elemento da questa coda.

int size ()
T take ()

Recupera e rimuove l'elemento T minimo (come giudicato dall'elemento ERROR(/Comparator) fornito nella coda.

T take ( IMatcher <T> matcher)

Recupera e rimuove il primo elemento T nella coda in cui matcher.matches(T) è true , attendendo se necessario fino a quando tale elemento diventa disponibile.

Costruttori pubblici

ConditionPriorityBlockingQueue

public ConditionPriorityBlockingQueue ()

Crea un ConditionPriorityBlockingQueue

Agli elementi verrà assegnata la priorità in ordine FIFO.

ConditionPriorityBlockingQueue

public ConditionPriorityBlockingQueue ( c)

Crea un ConditionPriorityBlockingQueue

parametri
c : ERROR(/Comparator) utilizzato per stabilire le priorità della coda.

Metodi pubblici

Inserisci

public boolean add (T addedElement)

Inserisce l'elemento specificato in questa coda. Poiché la coda è illimitata, questo metodo non si bloccherà mai.

parametri
addedElement T : l'elemento da aggiungere

ritorna
boolean true

Genera
ClassCastException se l'elemento specificato non può essere confrontato con gli elementi attualmente nella coda di priorità in base all'ordine della coda di priorità
NullPointerException se l'elemento specificato è nullo

addUnique

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

Aggiunge un elemento a questa coda, sostituendo qualsiasi oggetto esistente che corrisponde a una determinata condizione

parametri
matcher IMatcher : il matcher per valutare oggetti esistenti

object T : l'oggetto da aggiungere

ritorna
T l'oggetto sostituito o null se non esiste

chiaro

public void clear ()

Rimuove tutti gli elementi da questa coda.

contiene

public boolean contains (T object)

Determina se un oggetto è attualmente contenuto in questa coda.

parametri
object T : l'oggetto da trovare

ritorna
boolean true se l'oggetto specificato è contenuto nella coda. false> altrimenti.

getCopy

public  getCopy ()

Ottieni una copia del contenuto della coda.

ritorna

iteratore

public  iterator ()

ritorna

sondaggio

public T poll (long timeout, 
                TimeUnit unit)

Recupera e rimuove l'elemento T minimo (come giudicato dall'elemento ERROR(/Comparator) fornito nella coda.

Blocca fino al timeout per rendere disponibile un elemento.

parametri
timeout long : il tempo di attesa per la disponibilità di un elemento

unit TimeUnit : ERROR(/TimeUnit) del timeout

ritorna
T l'elemento minimo corrispondente o null se non ci sono elementi corrispondenti

sondaggio

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

Recupera e rimuove il minimo (come giudicato dall'elemento ERROR(/Comparator) fornito T nella coda in cui matcher.matches(T) è true .

Blocca fino al timeout per rendere disponibile un elemento.

parametri
timeout long : il tempo di attesa per la disponibilità di un elemento

unit TimeUnit : ERROR(/TimeUnit) del timeout

matcher IMatcher : IMatcher da utilizzare per valutare gli elementi

ritorna
T l'elemento minimo corrispondente o null se non ci sono elementi corrispondenti

sondaggio

public T poll ( IMatcher <T> matcher)

Recupera e rimuove il minimo (come giudicato dall'elemento ERROR(/Comparator) fornito T nella coda in cui matcher.matches(T) è true .

parametri
matcher IMatcher : IMatcher da utilizzare per valutare gli elementi

ritorna
T l'elemento minimo corrispondente o null se non ci sono elementi corrispondenti

sondaggio

public T poll ()

Recupera e rimuove il capo di questa coda.

ritorna
T il capo di questa coda, oppure null se la coda è vuota

rimuovere

public boolean remove (T object)

Rimuove un elemento da questa coda.

parametri
object T : l'oggetto da rimuovere

ritorna
boolean true se l'oggetto dato è stato rimosso dalla coda. false> altrimenti.

taglia

public int size ()

ritorna
int il numero di elementi in coda

prendere

public T take ()

Recupera e rimuove l'elemento T minimo (come giudicato dall'elemento ERROR(/Comparator) fornito nella coda.

Blocca indefinitamente per rendere disponibile un elemento.

ritorna
T il capo di questa coda

Genera
InterruptedException se interrotto durante l'attesa

prendere

public T take ( IMatcher <T> matcher)

Recupera e rimuove il primo elemento T nella coda in cui matcher.matches(T) è true , attendendo se necessario fino a quando tale elemento diventa disponibile.

parametri
matcher IMatcher : IMatcher da utilizzare per valutare gli elementi

ritorna
T l'elemento abbinato

Genera
InterruptedException se interrotto durante l'attesa