ConditionPriorityBlockingQueue

public class ConditionPriorityBlockingQueue
extends Object

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


Class yang aman untuk thread dengan operasi seperti ERROR(/PriorityBlockingQueue) yang dapat mengambil objek yang cocok dengan kondisi tertentu.

Iterasi juga aman untuk thread, tetapi tidak konsisten. Salinan antrean dibuat di iterator waktu pembuatan, dan salinan itu digunakan sebagai target iterasi. Jika antrean diubah selama iterasi, ERROR(/ConcurrentModificationException) tidak akan ditampilkan, tetapi iterator juga tidak akan mencerminkan konten yang dimodifikasi.

Ringkasan

Class bertingkat

class ConditionPriorityBlockingQueue.AlwaysMatch<T>

ConditionPriorityBlockingQueue.IMatcher yang cocok dengan objek apa pun. 

interface ConditionPriorityBlockingQueue.IMatcher<T>

Antarmuka untuk menentukan apakah elemen cocok dengan suatu kondisi. 

Konstruktor publik

ConditionPriorityBlockingQueue()

Membuat ConditionPriorityBlockingQueue

Elemen akan diprioritaskan dalam urutan FIFO.

ConditionPriorityBlockingQueue( c)

Membuat ConditionPriorityBlockingQueue

Metode publik

boolean add(T addedElement)

Menyisipkan elemen yang ditentukan ke dalam antrean ini.

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

Menambahkan item ke antrean ini, yang menggantikan objek yang ada yang cocok dengan kondisi yang ditentukan

void clear()

Menghapus semua elemen dari antrean ini.

boolean contains(T object)

Tentukan apakah sebuah objek saat ini dimuat dalam antrean ini.

getCopy()

Dapatkan salinan konten antrean.

iterator()

T poll(long timeout, TimeUnit unit)

Mengambil dan menghapus nilai minimum (sebagaimana dinilai oleh elemen ERROR(/Comparator) yang disediakan T di antrean.

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

Mengambil dan menghapus nilai minimum (sebagaimana dinilai oleh elemen ERROR(/Comparator) yang disediakan T di antrean yang mana matcher.matches(T) adalah true.

T poll(IMatcher<T> matcher)

Mengambil dan menghapus nilai minimum (sebagaimana dinilai oleh elemen ERROR(/Comparator) yang disediakan T di antrean yang mana matcher.matches(T) adalah true.

T poll()

Mengambil dan menghapus head antrean ini.

boolean remove(T object)

Menghapus item dari antrean ini.

int size()
T take()

Mengambil dan menghapus nilai minimum (sebagaimana dinilai oleh elemen ERROR(/Comparator) yang disediakan T di antrean.

T take(IMatcher<T> matcher)

Mengambil dan menghapus elemen T pertama dalam antrean tempat matcher.matches(T) berada true, menunggu jika perlu hingga elemen tersebut tersedia.

Konstruktor publik

ConditionPriorityBlockingQueue

public ConditionPriorityBlockingQueue ()

Membuat ConditionPriorityBlockingQueue

Elemen akan diprioritaskan dalam urutan FIFO.

ConditionPriorityBlockingQueue

public ConditionPriorityBlockingQueue ( c)

Membuat ConditionPriorityBlockingQueue

Parameter
c : ERROR(/Comparator) yang digunakan untuk memprioritaskan antrean.

Metode publik

tambahkan

public boolean add (T addedElement)

Menyisipkan elemen yang ditentukan ke dalam antrean ini. Karena antrean tidak terikat, metode ini akan jangan pernah memblokir.

Parameter
addedElement T: elemen yang akan ditambahkan

Hasil
boolean true

Menampilkan
ClassCastException jika elemen yang ditentukan tidak dapat dibandingkan dengan elemen yang saat ini berada di antrean prioritas sesuai dengan urutan antrean prioritas
NullPointerException jika elemen yang ditentukan null

addUnik

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

Menambahkan item ke antrean ini, yang menggantikan objek yang ada yang cocok dengan kondisi yang ditentukan

Parameter
matcher IMatcher: matcher untuk mengevaluasi objek yang ada

object T: objek yang akan ditambahkan

Hasil
T objek yang diganti atau null jika tidak ada

hapus

public void clear ()

Menghapus semua elemen dari antrean ini.

berisi

public boolean contains (T object)

Tentukan apakah sebuah objek saat ini dimuat dalam antrean ini.

Parameter
object T: objek yang akan ditemukan

Hasil
boolean true jika objek yang diberikan dimasukkan dalam antrean. false> sebaliknya.

getCopy

public  getCopy ()

Dapatkan salinan konten antrean.

Hasil

Iterator

public  iterator ()

Hasil

jajak pendapat

public T poll (long timeout, 
                TimeUnit unit)

Mengambil dan menghapus nilai minimum (sebagaimana dinilai oleh elemen ERROR(/Comparator) yang disediakan T di antrean.

Memblokir waktu hingga timeout agar elemen tersedia.

Parameter
timeout long: jumlah waktu tunggu hingga elemen tersedia

unit TimeUnit: ERROR(/TimeUnit) waktu tunggu

Hasil
T elemen minimum yang cocok, atau null jika tidak ada elemen yang cocok

jajak pendapat

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

Mengambil dan menghapus nilai minimum (sebagaimana dinilai oleh elemen ERROR(/Comparator) yang disediakan T di antrean yang mana matcher.matches(T) adalah true.

Memblokir waktu hingga timeout agar elemen tersedia.

Parameter
timeout long: jumlah waktu tunggu hingga elemen tersedia

unit TimeUnit: ERROR(/TimeUnit) waktu tunggu

matcher IMatcher: IMatcher yang akan digunakan untuk mengevaluasi elemen

Hasil
T elemen minimum yang cocok, atau null jika tidak ada elemen yang cocok

jajak pendapat

public T poll (IMatcher<T> matcher)

Mengambil dan menghapus nilai minimum (sebagaimana dinilai oleh elemen ERROR(/Comparator) yang disediakan T di antrean yang mana matcher.matches(T) adalah true.

Parameter
matcher IMatcher: IMatcher yang akan digunakan untuk mengevaluasi elemen

Hasil
T elemen minimum yang cocok, atau null jika tidak ada elemen yang cocok

jajak pendapat

public T poll ()

Mengambil dan menghapus head antrean ini.

Hasil
T head antrean ini, atau null jika antrean kosong

hapus

public boolean remove (T object)

Menghapus item dari antrean ini.

Parameter
object T: objek yang akan dihapus

Hasil
boolean true jika objek yang diberikan telah dihapus dari antrean. false> sebaliknya.

ukuran

public int size ()

Hasil
int jumlah elemen dalam antrean

ambil

public T take ()

Mengambil dan menghapus nilai minimum (sebagaimana dinilai oleh elemen ERROR(/Comparator) yang disediakan T di antrean.

Memblokir elemen tanpa batas waktu agar elemen tersedia.

Hasil
T kepala antrean ini

Menampilkan
InterruptedException jika terganggu saat menunggu

ambil

public T take (IMatcher<T> matcher)

Mengambil dan menghapus elemen T pertama dalam antrean tempat matcher.matches(T) berada true, menunggu jika perlu hingga elemen tersebut tersedia.

Parameter
matcher IMatcher: IMatcher yang akan digunakan untuk mengevaluasi elemen

Hasil
T elemen yang cocok

Menampilkan
InterruptedException jika terganggu saat menunggu