ConditionPriorityBlockingQueue
public
class
ConditionPriorityBlockingQueue
extends Object
implements
Iterable<T>
| java.lang.Object | |
| ↳ | com.android.tradefed.util.ConditionPriorityBlockingQueue<T> |
Belirli bir koşulu karşılayan nesneleri alabilen, PriorityBlockingQueue benzeri işlemlere sahip iş parçacığı açısından güvenli bir sınıf.
Yineleme de iş parçacığı açısından güvenlidir ancak tutarlı değildir. Yineleyici oluşturma sırasında kuyruğun bir kopyası oluşturulur ve bu kopya, yineleme hedefi olarak kullanılır. Yineleme sırasında sıra değiştirilirse ConcurrentModificationException oluşturulmaz ancak yineleyici, değiştirilen içerikleri de yansıtmaz.
Ayrıca bkz.:
Özet
İç içe yerleştirilmiş sınıflar | |
|---|---|
class |
ConditionPriorityBlockingQueue.AlwaysMatch<T>
Herhangi bir nesneyle eşleşen |
interface |
ConditionPriorityBlockingQueue.IMatcher<T>
Öğelerin belirli bir koşulla eşleşip eşleşmediğini belirlemeye yönelik bir arayüz. |
Herkese açık oluşturucular | |
|---|---|
ConditionPriorityBlockingQueue()
Öğeler, ilk gelen ilk hizmet alır (FIFO) sırasına göre önceliklendirilir. |
|
ConditionPriorityBlockingQueue(Comparator<T> c)
|
|
Herkese açık yöntemler | |
|---|---|
boolean
|
add(T addedElement)
Belirtilen öğeyi bu sıraya ekler. |
T
|
addUnique(IMatcher<T> matcher, T object)
Bu sıraya bir öğe ekler ve verilen koşula uyan mevcut nesneleri değiştirir. |
void
|
clear()
Bu sıradaki tüm öğeleri kaldırır. |
boolean
|
contains(T object)
Bir nesnenin şu anda bu kuyrukta olup olmadığını belirler. |
List<T>
|
getCopy()
Kuyruğun içeriğinin bir kopyasını alın. |
Iterator<T>
|
iterator()
|
T
|
poll(IMatcher<T> matcher)
|
T
|
poll(long timeout, TimeUnit unit, IMatcher<T> matcher)
matcher.matches(T) öğesinin |
T
|
poll(long timeout, TimeUnit unit)
Kuyrukta sağlanan |
T
|
poll()
Bu kuyruğun başını alır ve kaldırır. |
boolean
|
remove(T object)
Bu sıradan bir öğeyi kaldırır. |
int
|
size()
|
T
|
take()
Kuyrukta sağlanan |
T
|
take(IMatcher<T> matcher)
Kuyruktaki ilk öğe T'yi alır ve kaldırır. Burada matcher.matches(T), |
Herkese açık oluşturucular
ConditionPriorityBlockingQueue
public ConditionPriorityBlockingQueue ()
ConditionPriorityBlockingQueue oluşturur.
Öğeler, ilk gelen ilk hizmet alır (FIFO) sırasına göre önceliklendirilir.
ConditionPriorityBlockingQueue
public ConditionPriorityBlockingQueue (Comparator<T> c)
ConditionPriorityBlockingQueue oluşturur.
| Parametreler | |
|---|---|
c |
Comparator: sıraya öncelik vermek için kullanılan Comparator. |
Herkese açık yöntemler
add
public boolean add (T addedElement)
Belirtilen öğeyi bu sıraya ekler. Kuyruk sınırsız olduğundan bu yöntem hiçbir zaman engellenmez.
| Parametreler | |
|---|---|
addedElement |
T: Eklenecek öğe |
| İadeler | |
|---|---|
boolean |
true |
| Verdiği hatalar | |
|---|---|
ClassCastException |
belirtilen öğe, öncelik sırasının sıralamasına göre şu anda öncelik sırasındaki öğelerle karşılaştırılamıyorsa |
NullPointerException |
belirtilen öğe null ise |
addUnique
public T addUnique (IMatcher<T> matcher, T object)
Bu sıraya bir öğe ekler ve verilen koşula uyan mevcut nesneleri değiştirir.
| Parametreler | |
|---|---|
matcher |
IMatcher: Mevcut nesneleri değerlendirecek eşleştirici |
object |
T: eklenecek nesne |
| İadeler | |
|---|---|
T |
Değiştirilen nesne veya yoksa null |
sil
public void clear ()
Bu sıradaki tüm öğeleri kaldırır.
şunu içerir:
public boolean contains (T object)
Bir nesnenin şu anda bu kuyrukta olup olmadığını belirler.
| Parametreler | |
|---|---|
object |
T: Bulunacak nesne |
| İadeler | |
|---|---|
boolean |
Verilen nesne sıraya eklenmişse true. false>
aksi takdirde. |
getCopy
public List<T> getCopy ()
Kuyruğun içeriğinin bir kopyasını alın.
| İadeler | |
|---|---|
List<T> |
|
iterator
public Iterator<T> iterator ()
| İadeler | |
|---|---|
Iterator<T> |
|
anket
public T poll (IMatcher<T> matcher)
matcher.matches(T) öğesinin true olduğu kuyrukta, sağlanan Comparator öğesi T ile belirlenen minimum değeri alır ve kaldırır.
| Parametreler | |
|---|---|
matcher |
IMatcher: Öğeleri değerlendirmek için kullanılacak IMatcher |
| İadeler | |
|---|---|
T |
eşleşen minimum öğe veya eşleşen öğe yoksa null |
anket
public T poll (long timeout,
TimeUnit unit,
IMatcher<T> matcher)matcher.matches(T) öğesinin true olduğu kuyrukta, sağlanan Comparator öğesi T ile belirlenen minimum değeri alır ve kaldırır.
Bir öğenin kullanılabilir hale gelmesi için timeout süreye kadar engeller.
| Parametreler | |
|---|---|
timeout |
long: Bir öğenin kullanılabilir hale gelmesini beklemek için gereken süre |
unit |
TimeUnit: zaman aşımının TimeUnit |
matcher |
IMatcher: Öğeleri değerlendirmek için kullanılacak IMatcher |
| İadeler | |
|---|---|
T |
eşleşen minimum öğe veya eşleşen öğe yoksa null |
| Verdiği hatalar | |
|---|---|
InterruptedException |
|
anket
public T poll (long timeout,
TimeUnit unit)Kuyrukta sağlanan Comparator öğesi T ile belirlenen minimum değeri alır ve kaldırır.
Bir öğenin kullanılabilir hale gelmesi için timeout süreye kadar engeller.
| Parametreler | |
|---|---|
timeout |
long: Bir öğenin kullanılabilir hale gelmesini beklemek için gereken süre |
unit |
TimeUnit: zaman aşımının TimeUnit |
| İadeler | |
|---|---|
T |
eşleşen minimum öğe veya eşleşen öğe yoksa null |
| Verdiği hatalar | |
|---|---|
InterruptedException |
|
anket
public T poll ()
Bu kuyruğun başını alır ve kaldırır.
| İadeler | |
|---|---|
T |
Bu sıranın başı veya sıra boşsa null |
remove
public boolean remove (T object)
Bu sıradan bir öğeyi kaldırır.
| Parametreler | |
|---|---|
object |
T: Kaldırılacak nesne |
| İadeler | |
|---|---|
boolean |
true, verilen nesne sıradan kaldırıldıysa. false>
aksi takdirde. |
beden
public int size ()
| İadeler | |
|---|---|
int |
kuyruktaki öğe sayısı |
çekim
public T take ()
Kuyrukta sağlanan Comparator öğesi T ile belirlenen minimum değeri alır ve kaldırır.
Bir öğenin kullanılabilir hale gelmesi için süresiz olarak engeller.
| İadeler | |
|---|---|
T |
bu sıranın başı |
| Verdiği hatalar | |
|---|---|
InterruptedException |
Beklerken kesintiye uğrarsa |
çekim
public T take (IMatcher<T> matcher)
Kuyruktaki ilk öğe T'yi alır ve kaldırır. Burada matcher.matches(T), true'dir. Gerekirse böyle bir öğe kullanılabilir hale gelene kadar bekler.
| Parametreler | |
|---|---|
matcher |
IMatcher: Öğeleri değerlendirmek için kullanılacak IMatcher |
| İadeler | |
|---|---|
T |
eşleşen öğe |
| Verdiği hatalar | |
|---|---|
InterruptedException |
Beklerken kesintiye uğrarsa |