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.
ERROR(/ConcurrentModificationException)
nie zostanie zgłoszony, ale iterator również nie odzwierciedli zmodyfikowanej zawartości.Zobacz też:
Streszczenie
Zagnieżdżone klasy | |
---|---|
class | ConditionPriorityBlockingQueue.AlwaysMatch <T> |
interface | ConditionPriorityBlockingQueue.IMatcher <T> Interfejs umożliwiający określenie, czy elementy spełniają jakiś warunek. |
Konstruktorzy publiczni | |
---|---|
ConditionPriorityBlockingQueue () Tworzy kolejkę | |
ConditionPriorityBlockingQueue ( c) ConditionPriorityBlockingQueue ( c) Tworzy kolejkę |
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 |
T | poll (long timeout, TimeUnit unit, IMatcher <T> matcher) Pobiera i usuwa minimalny (według podanego elementu |
T | poll ( IMatcher <T> matcher) Pobiera i usuwa minimalny (według podanego elementu |
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 |
T | take ( IMatcher <T> matcher) Pobiera i usuwa pierwszy element T z kolejki, w której matcher.matches(T) ma |
Konstruktorzy publiczni
WarunekPriorytetBlockingQueue
public ConditionPriorityBlockingQueue ()
Tworzy kolejkę ConditionPriorityBlockingQueue
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ę
publicgetCopy ()
Uzyskaj kopię zawartości kolejki.
Zwroty | |
---|---|
iterator
publiciterator ()
Zwroty | |
---|---|
głosowanie
public T poll (long timeout, TimeUnit unit)
Pobiera i usuwa minimalny (oceniany na podstawie podanego elementu ERROR(/Comparator)
T w kolejce.
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
.
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.
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 |
Treść strony i umieszczone na niej fragmenty kodu podlegają licencjom opisanym w Licencji na treści. Java i OpenJDK są znakami towarowymi lub zastrzeżonymi znakami towarowymi należącymi do firmy Oracle lub jej podmiotów stowarzyszonych.
Ostatnia aktualizacja: 2023-12-01 UTC.