ConditionPriorityBlockingQueue
  public
  
  
  
  class
  ConditionPriorityBlockingQueue
  
    extends Object
  
  
  
  
  
  
| java.lang.Object | |
| ↳ | com.android.tradefed.util.ConditionPriorityBlockingQueue<T> | 
Klasa bezpieczna dla wątków z operacjami podobnymi do operacji ERROR(/PriorityBlockingQueue), które mogą pobierać obiekty spełniające określony warunek.
 
 Iteracja jest również bezpieczna w połączeniu z wątkami, ale nie jest spójna. Podczas tworzenia iteratora tworzona jest kopia kolejki, która jest używana jako docel iteracji. Jeśli kolejka zostanie zmodyfikowana podczas iteracji, nie zostanie wywołana funkcja ERROR(/ConcurrentModificationException), ale iterator nie będzie też odzwierciedlać zmodyfikowanej zawartości.
 
Zobacz też:
Podsumowanie
| Zagnieżdżone klasy | |
|---|---|
| 
        
        
        
        
        class | ConditionPriorityBlockingQueue.AlwaysMatch<T>
 | 
| 
        
        
        
        
        interface | ConditionPriorityBlockingQueue.IMatcher<T>Interfejs do określania, czy elementy spełniają określony warunek. | 
| Konstruktory publiczne | |
|---|---|
| 
      ConditionPriorityBlockingQueue()
      Tworzy  Elementy zostaną pogrupowane według zasady FIFO. | |
| 
      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 każdy istniejący obiekt, który spełnia podane kryterium. | 
| 
        
        
        
        
        
        void | 
      clear()
      Usuwa wszystkie elementy z tej kolejki. | 
| 
        
        
        
        
        
        boolean | 
      contains(T object)
      Określa, czy obiekt znajduje się obecnie w tej kolejce. | 
| 
        
        
        
        
        
         | 
      getCopy()
      Pobierz kopię zawartości kolejki. | 
| 
        
        
        
        
        
         | 
      iterator()
      
 | 
| 
        
        
        
        
        
        T | 
      poll(long timeout, TimeUnit unit)
      Pobiera i usuwa minimalną wartość (określaną przez podany element  | 
| 
        
        
        
        
        
        T | 
      poll(long timeout, TimeUnit unit, IMatcher<T> matcher)
      Pobiera i usuwa minimalną wartość (określaną przez podany element  | 
| 
        
        
        
        
        
        T | 
      poll(IMatcher<T> matcher)
      Pobiera i usuwa minimalną wartość (określaną przez podany element  | 
| 
        
        
        
        
        
        T | 
      poll()
      Pobiera i usuwa element z pierwszej pozycji kolejki. | 
| 
        
        
        
        
        
        boolean | 
      remove(T object)
      Usuwa element z tej kolejki. | 
| 
        
        
        
        
        
        int | 
      size()
       | 
| 
        
        
        
        
        
        T | 
      take()
      Pobiera i usuwa minimalną wartość (określaną przez podany element  | 
| 
        
        
        
        
        
        T | 
      take(IMatcher<T> matcher)
      Pobiera i usuwa pierwszy element T z kolejki, w której matcher.matches(T) jest  | 
Konstruktory publiczne
ConditionPriorityBlockingQueue
public ConditionPriorityBlockingQueue ()
Tworzy ConditionPriorityBlockingQueue
 
Elementy zostaną pogrupowane według zasady FIFO.
ConditionPriorityBlockingQueue
public ConditionPriorityBlockingQueue (c) 
Tworzy ConditionPriorityBlockingQueue
| Parametry | |
|---|---|
| c | :ERROR(/Comparator)używany do ustalania kolejności w kolejce. | 
Metody publiczne
dodaj
public boolean add (T addedElement)
Wstawia określony element do tej kolejki. Ponieważ kolejka jest nieskończona, ta metoda nigdy nie zablokuje się.
| Parametry | |
|---|---|
| addedElement | T: element do dodania | 
| Zwroty | |
|---|---|
| boolean | true | 
| Rzuty | |
|---|---|
| ClassCastException | jeśli nie można porównać podanego elementu z elementami znajdującymi się obecnie w kole priorytetowej zgodnie z kolejnością w tej kolejce; | 
| NullPointerException | jeśli podany element jest pusty | 
addUnique
public T addUnique (IMatcher<T> matcher, T object)
Dodaje element do tej kolejki, zastępując każdy istniejący obiekt, który spełnia podane kryterium.
| Parametry | |
|---|---|
| matcher | IMatcher: element porównujący istniejące obiekty | 
| object | T: obiekt do dodania | 
| Zwroty | |
|---|---|
| T | zastąpiony obiekt lub null, jeśli żaden nie istnieje. | 
wyczyść
public void clear ()
Usuwa wszystkie elementy z tej kolejki.
zawiera
public boolean contains (T object)
Określa, czy obiekt znajduje się obecnie w tej kolejce.
| Parametry | |
|---|---|
| object | T: obiekt do znalezienia | 
| Zwroty | |
|---|---|
| boolean | true, jeśli dany obiekt znajduje się w kole.false>w innym przypadku. | 
getCopy
publicgetCopy () 
Pobierz kopię zawartości kolejki.
| Zwroty | |
|---|---|
|  | |
iterator
publiciterator () 
| Zwroty | |
|---|---|
|  | |
ankieta
public T poll (long timeout, 
                TimeUnit unit)Pobiera i usuwa minimalną wartość (określaną przez podany element ERROR(/Comparator) T w kole).
 
Blokuje dostęp do elementu na maksymalnie timeout godzin.
| Parametry | |
|---|---|
| timeout | long: czas oczekiwania na udostępnienie elementu | 
| unit | TimeUnit:ERROR(/TimeUnit)czasu oczekiwania | 
| Zwroty | |
|---|---|
| T | minimalny pasujący element lub null, jeśli nie ma pasujących elementów | 
ankieta
public T poll (long timeout, 
                TimeUnit unit, 
                IMatcher<T> matcher)Pobiera i usuwa minimalną wartość (określaną przez podany element ERROR(/Comparator) T w kole, gdzie matcher.matches(T) to true).
 
Blokuje dostęp do elementu na maksymalnie timeout godzin.
| Parametry | |
|---|---|
| timeout | long: czas oczekiwania na udostępnienie elementu | 
| unit | TimeUnit:ERROR(/TimeUnit)czasu oczekiwania | 
| matcher | IMatcher:IMatcherdo oceny elementów | 
| Zwroty | |
|---|---|
| T | minimalny pasujący element lub null, jeśli nie ma pasujących elementów | 
ankieta
public T poll (IMatcher<T> matcher)
Pobiera i usuwa minimalną wartość (określaną przez podany element ERROR(/Comparator) T w kole, gdzie matcher.matches(T) to true).
| Parametry | |
|---|---|
| matcher | IMatcher:IMatcherdo oceny elementów | 
| Zwroty | |
|---|---|
| T | minimalny pasujący element lub null, jeśli nie ma pasujących elementów | 
ankieta
public T poll ()
Pobiera i usuwa element z pierwszej pozycji kolejki.
| Zwroty | |
|---|---|
| T | element z pierwszej pozycji w kolejce lub null, jeśli kolejka jest pusta; | 
usuwania
public boolean remove (T object)
Usuwa element z tej kolejki.
| Parametry | |
|---|---|
| object | T: obiekt do usunięcia | 
| Zwroty | |
|---|---|
| boolean | true, jeśli podany obiekt został usunięty z kolejki.false>w innym przypadku. | 
rozmiar
public int size ()
| Zwroty | |
|---|---|
| int | liczba elementów w kole. | 
take
public T take ()
Pobiera i usuwa minimalną wartość (określaną przez podany element ERROR(/Comparator) T w kole).
 
Blokuje dostęp do elementu na czas nieokreślony.
| Zwroty | |
|---|---|
| T | początek kolejki | 
| Rzuty | |
|---|---|
| InterruptedException | jeśli połączenie zostało przerwane podczas oczekiwania, | 
take
public T take (IMatcher<T> matcher)
Pobiera i usuwa pierwszy element T z kolejki, w której matcher.matches(T) jest true. W razie potrzeby oczekuje, aż element stanie się dostępny.
| Parametry | |
|---|---|
| matcher | IMatcher:IMatcherdo oceny elementów | 
| Zwroty | |
|---|---|
| T | dopasowany element, | 
| Rzuty | |
|---|---|
| InterruptedException | jeśli połączenie zostało przerwane podczas oczekiwania, | 
