Google致力於提高黑人社區的種族平等。 怎麼看。
本頁面由 Cloud Translation API 翻譯而成。
Switch to English

ConditionPriorityBlockingQueue

public class ConditionPriorityBlockingQueue
extends Object

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


具有ERROR(/PriorityBlockingQueue)的操作的線程安全類,可以檢索與特定條件匹配的對象。

迭代也是線程安全的,但不一致。在迭代器創建時創建隊列的副本,並將該副本用作迭代目標。如果在迭代過程中修改了隊列,則不會引發ERROR(/ConcurrentModificationException) ,但是迭代器也不會反映修改後的內容。

也可以看看:

摘要

嵌套類

class ConditionPriorityBlockingQueue.AlwaysMatch <T>

與任何對象匹配的ConditionPriorityBlockingQueue.IMatcher

interface ConditionPriorityBlockingQueue.IMatcher <T>

用於確定元素是否符合某種條件的接口。

公共建設者

ConditionPriorityBlockingQueue ()

創建一個ConditionPriorityBlockingQueue

元素將按FIFO順序排列優先級。

ConditionPriorityBlockingQueue ( c) ConditionPriorityBlockingQueue ( c)

創建一個ConditionPriorityBlockingQueue

公開方法

boolean add (T addedElement)

將指定的元素插入此隊列。

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

將項目添加到此隊列,替換與給定條件匹配的所有現有對象

void clear ()

從此隊列中刪除所有元素。

boolean contains (T object)

確定此隊列中當前是否包含對象。

getCopy ()

獲取隊列內容的副本。

iterator ()

T poll (long timeout, TimeUnit unit)

檢索並刪除隊列中的最小值(由提供的ERROR(/Comparator)判斷ERROR(/Comparator)

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

檢索並除去matcher.matches(T)true的隊列中的最小值(由提供的ERROR(/Comparator)判斷matcher.matches(T)

T poll ( IMatcher <T> matcher)

檢索並除去matcher.matches(T)true的隊列中的最小值(由提供的ERROR(/Comparator)判斷matcher.matches(T)

T poll ()

檢索並刪除此隊列的頭。

boolean remove (T object)

從此隊列中刪除一個項目。

int size ()
T take ()

檢索並刪除隊列中的最小值(由提供的ERROR(/Comparator)判斷ERROR(/Comparator)

T take ( IMatcher <T> matcher)

檢索並刪除matcher.matches(T)true的隊列中的第一個元素T,如有必要,請等待直到該元素變為可用。

公共建設者

ConditionPriorityBlockingQueue

public ConditionPriorityBlockingQueue ()

創建一個ConditionPriorityBlockingQueue

元素將按FIFO順序排列優先級。

ConditionPriorityBlockingQueue

public ConditionPriorityBlockingQueue ( c)

創建一個ConditionPriorityBlockingQueue

參量
c :用於對隊列進行優先級排序的ERROR(/Comparator)

公開方法

public boolean add (T addedElement)

將指定的元素插入此隊列。由於隊列不受限制,因此此方法將永遠不會阻塞。

參量
addedElement T :要添加的元素

退貨
boolean true

投擲
ClassCastException 如果根據優先級隊列的順序無法將指定的元素與優先級隊列中當前的元素進行比較
NullPointerException 如果指定的元素為null

addUnique

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

將項目添加到此隊列,替換與給定條件匹配的所有現有對象

參量
matcher IMatcher :用於評估現有對象的匹配器

object T :要添加的對象

退貨
T 替換的對象;如果不存在,則為null

明確

public void clear ()

從此隊列中刪除所有元素。

包含

public boolean contains (T object)

確定此隊列中當前是否包含對象。

參量
object T :要查找的對象

退貨
boolean 如果給定對象包含在隊列中,則為truefalse>否則。

getCopy

public  getCopy ()

獲取隊列內容的副本。

退貨

迭代器

public  iterator ()

退貨

輪詢

public T poll (long timeout, 
                TimeUnit unit)

檢索並刪除隊列中的最小值(由提供的ERROR(/Comparator)判斷ERROR(/Comparator)

阻止timeout ,直到某個元素變為可用。

參量
timeout long :等待元素可用的時間

unit TimeUnit :超時的ERROR(/TimeUnit)

退貨
T 最小匹配元素;如果沒有匹配元素,則為null

輪詢

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

檢索並刪除matcher.matches(T)true的隊列中的最小值(由提供的ERROR(/Comparator)判斷matcher.matches(T)

阻止timeout ,直到某個元素變為可用。

參量
timeout long :等待元素可用的時間

unit TimeUnit :超時的ERROR(/TimeUnit)

matcher IMatcher :用於評估元素的IMatcher

退貨
T 最小匹配元素;如果沒有匹配元素,則為null

輪詢

public T poll ( IMatcher <T> matcher)

檢索並刪除matcher.matches(T)true的隊列中的最小值(由提供的ERROR(/Comparator)判斷matcher.matches(T)

參量
matcher IMatcher :用於評估元素的IMatcher

退貨
T 最小匹配元素;如果沒有匹配元素,則為null

輪詢

public T poll ()

檢索並刪除此隊列的頭。

退貨
T 此隊列的頭;如果隊列為空,則為null

去掉

public boolean remove (T object)

從此隊列中刪除一個項目。

參量
object T :要刪除的對象

退貨
boolean 如果給定對像已從隊列中刪除,則為truefalse>否則。

尺寸

public int size ()

退貨
int 隊列中的元素數

採取

public T take ()

檢索並刪除隊列中的最小值(由提供的ERROR(/Comparator)判斷ERROR(/Comparator)

無限期阻止某個元素變為可用。

退貨
T 此隊列的頭

投擲
InterruptedException 如果在等待時被打斷

採取

public T take ( IMatcher <T> matcher)

檢索並刪除matcher.matches(T)true的隊列中的第一個元素T,如有必要,請等待直到該元素變為可用。

參量
matcher IMatcher :用於評估元素的IMatcher

退貨
T 匹配的元素

投擲
InterruptedException 如果在等待時被打斷