WarunekPriorytetBlockingQueue

public class ConditionPriorityBlockingQueue
extends Object

Obiekt Java.lang.Object
com.android.tradefed.util.ConditionPriorityBlockingQueue<T>


Klasa bezpieczna dla wątków z operacjami podobnymi do ERROR(/PriorityBlockingQueue) , które mogą pobierać obiekty spełniające określony warunek.

Iteracja jest również bezpieczna dla wątków, ale nie jest spójna. Kopia kolejki jest tworzona w momencie tworzenia iteratora i ta kopia jest używana jako cel iteracji. Jeśli kolejka zostanie zmodyfikowana podczas iteracji, ERROR(/ConcurrentModificationException) nie zostanie zgłoszony, ale iterator również nie odzwierciedli zmodyfikowanej zawartości.

Streszczenie

Zagnieżdżone klasy

class ConditionPriorityBlockingQueue.AlwaysMatch <T>

ConditionPriorityBlockingQueue.IMatcher , który pasuje do dowolnego obiektu.

interface ConditionPriorityBlockingQueue.IMatcher <T>

Interfejs umożliwiający określenie, czy elementy spełniają jakiś warunek.

Konstruktorzy publiczni

ConditionPriorityBlockingQueue ()

Tworzy kolejkę ConditionPriorityBlockingQueue

Elementy będą traktowane priorytetowo w kolejności FIFO.

ConditionPriorityBlockingQueue ( c) ConditionPriorityBlockingQueue ( c)

Tworzy kolejkę ConditionPriorityBlockingQueue

Metody publiczne

boolean add (T addedElement)

Wstawia określony element do tej kolejki.

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

Dodaje element do tej kolejki, zastępując istniejący obiekt spełniający podany warunek

void clear ()

Usuwa wszystkie elementy z tej kolejki.

boolean contains (T object)

Sprawdź, czy obiekt znajduje się obecnie w tej kolejce.

getCopy ()

Uzyskaj kopię zawartości kolejki.

iterator ()

T poll (long timeout, TimeUnit unit)

Pobiera i usuwa minimalny (oceniany na podstawie podanego elementu ERROR(/Comparator) T w kolejce.

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

Pobiera i usuwa minimalny (według podanego elementu ERROR(/Comparator) T w kolejce, w którym matcher.matches(T) ma true .

T poll ( IMatcher <T> matcher)

Pobiera i usuwa minimalny (według podanego elementu ERROR(/Comparator) T w kolejce, w którym matcher.matches(T) ma true .

T poll ()

Pobiera i usuwa początek tej kolejki.

boolean remove (T object)

Usuwa element z tej kolejki.

int size ()
T take ()

Pobiera i usuwa minimalny (oceniany na podstawie podanego elementu ERROR(/Comparator) T w kolejce.

T take ( IMatcher <T> matcher)

Pobiera i usuwa pierwszy element T z kolejki, w której matcher.matches(T) ma true , czekając, jeśli to konieczne, aż taki element stanie się dostępny.

Konstruktorzy publiczni

WarunekPriorytetBlockingQueue

public ConditionPriorityBlockingQueue ()

Tworzy kolejkę ConditionPriorityBlockingQueue

Elementy będą traktowane priorytetowo w kolejności FIFO.

WarunekPriorytetBlockingQueue

public ConditionPriorityBlockingQueue ( c)

Tworzy kolejkę ConditionPriorityBlockingQueue

Parametry
c : ERROR(/Comparator) używany do ustalania priorytetów kolejki.

Metody publiczne

dodać

public boolean add (T addedElement)

Wstawia określony element do tej kolejki. Ponieważ kolejka jest nieograniczona, ta metoda nigdy nie będzie blokowana.

Parametry
addedElement T : element do dodania

Zwroty
boolean true

Rzuca
ClassCastException jeśli określonego elementu nie można porównać z elementami aktualnie znajdującymi się w kolejce priorytetowej zgodnie z kolejnością kolejki priorytetowej
NullPointerException jeśli określony element ma wartość null

dodajUnikalne

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

Dodaje element do tej kolejki, zastępując istniejący obiekt spełniający podany warunek

Parametry
matcher IMatcher : moduł dopasowujący do oceny istniejących obiektów

object T : obiekt do dodania

Zwroty
T zastąpiony obiekt lub null , jeśli żaden nie istnieje

jasne

public void clear ()

Usuwa wszystkie elementy z tej kolejki.

zawiera

public boolean contains (T object)

Sprawdź, czy obiekt znajduje się obecnie w tej kolejce.

Parametry
object T : obiekt do znalezienia

Zwroty
boolean true , jeśli dany obiekt znajduje się w kolejce. false> w przeciwnym razie.

pobierz kopię

public  getCopy ()

Uzyskaj kopię zawartości kolejki.

Zwroty

iterator

public  iterator ()

Zwroty

głosowanie

public T poll (long timeout, 
                TimeUnit unit)

Pobiera i usuwa minimalny (oceniany na podstawie podanego elementu ERROR(/Comparator) T w kolejce.

Blokuje timeout czasu, po którym element staje się dostępny.

Parametry
timeout long : ilość czasu oczekiwania na udostępnienie elementu

unit TimeUnit : ERROR(/TimeUnit) przekroczenia limitu czasu

Zwroty
T minimalny dopasowany element lub null , jeśli nie ma pasujących elementów

głosowanie

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

Pobiera i usuwa minimalny (oceniany na podstawie podanego elementu ERROR(/Comparator) T w kolejce, w którym matcher.matches(T) ma true .

Blokuje timeout czasu, po którym element staje się dostępny.

Parametry
timeout long : ilość czasu oczekiwania na udostępnienie elementu

unit TimeUnit : ERROR(/TimeUnit) przekroczenia limitu czasu

matcher IMatcher : IMatcher używany do oceny elementów

Zwroty
T minimalny dopasowany element lub null , jeśli nie ma pasujących elementów

głosowanie

public T poll (IMatcher<T> matcher)

Pobiera i usuwa minimalny (oceniany na podstawie podanego elementu ERROR(/Comparator) T w kolejce, w którym matcher.matches(T) ma true .

Parametry
matcher IMatcher : IMatcher używany do oceny elementów

Zwroty
T minimalny dopasowany element lub null , jeśli nie ma pasujących elementów

głosowanie

public T poll ()

Pobiera i usuwa początek tej kolejki.

Zwroty
T nagłówek tej kolejki lub null , jeśli kolejka jest pusta

usunąć

public boolean remove (T object)

Usuwa element z tej kolejki.

Parametry
object T : obiekt do usunięcia

Zwroty
boolean true jeśli dany obiekt został usunięty z kolejki. false> w przeciwnym razie.

rozmiar

public int size ()

Zwroty
int liczba elementów w kolejce

Brać

public T take ()

Pobiera i usuwa minimalny (oceniany na podstawie podanego elementu ERROR(/Comparator) T w kolejce.

Blokuje na czas nieokreślony, aby element stał się dostępny.

Zwroty
T szef tej kolejki

Rzuca
InterruptedException jeśli zostanie przerwany podczas oczekiwania

Brać

public T take (IMatcher<T> matcher)

Pobiera i usuwa pierwszy element T z kolejki, w której matcher.matches(T) ma true , czekając, jeśli to konieczne, aż taki element stanie się dostępny.

Parametry
matcher IMatcher : IMatcher używany do oceny elementów

Zwroty
T dopasowany element

Rzuca
InterruptedException jeśli zostanie przerwany podczas oczekiwania