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) องค์ประกอบ T ที่ให้มาในคิว

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

ดึงและลบค่าต่ำสุด (ตามการตัดสินโดย ERROR(/Comparator) องค์ประกอบ T ที่ให้มาในคิว โดยที่ matcher.matches(T) เป็น true

T poll ( IMatcher <T> matcher)

ดึงและลบค่าต่ำสุด (ตามการตัดสินโดย ERROR(/Comparator) องค์ประกอบ T ที่ให้มาในคิว โดยที่ matcher.matches(T) เป็น true

T poll ()

ดึงและลบส่วนหัวของคิวนี้

boolean remove (T object)

ลบรายการออกจากคิวนี้

int size ()
T take ()

ดึงและลบค่าต่ำสุด (ตามการตัดสินโดย ERROR(/Comparator) องค์ประกอบ T ที่ให้มาในคิว

T take ( IMatcher <T> matcher)

ดึงและลบองค์ประกอบแรก T ในคิวที่ matcher.matches(T) เป็น true รอหากจำเป็นจนกว่าองค์ประกอบดังกล่าวจะพร้อมใช้งาน

ผู้สร้างสาธารณะ

ConditionPriorityBlockingQueue

public ConditionPriorityBlockingQueue ()

สร้าง ConditionPriorityBlockingQueue

องค์ประกอบจะได้รับการจัดลำดับความสำคัญตามลำดับ FIFO

ConditionPriorityBlockingQueue

public ConditionPriorityBlockingQueue ( c)

สร้าง ConditionPriorityBlockingQueue

พารามิเตอร์
c : ERROR(/Comparator) ใช้เพื่อจัดลำดับความสำคัญของคิว

วิธีการสาธารณะ

เพิ่ม

public boolean add (T addedElement)

แทรกองค์ประกอบที่ระบุลงในคิวนี้ เนื่องจากคิวไม่มีขอบเขตวิธีนี้จะไม่บล็อก

พารามิเตอร์
addedElement T : องค์ประกอบที่จะเพิ่ม

ส่งคืน
boolean true

พ่น
ClassCastException หากไม่สามารถเปรียบเทียบองค์ประกอบที่ระบุกับองค์ประกอบที่อยู่ในคิวลำดับความสำคัญตามลำดับของคิวลำดับความสำคัญ
NullPointerException หากองค์ประกอบที่ระบุเป็นโมฆะ

เพิ่มเอกลักษณ์

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 true ถ้าวัตถุที่กำหนดอยู่ในคิว false> มิฉะนั้น

รับสำเนา

public  getCopy ()

รับสำเนาเนื้อหาของคิว

ส่งคืน

วนซ้ำ

public  iterator ()

ส่งคืน

แบบสำรวจความคิดเห็น

public T poll (long timeout, 
                TimeUnit unit)

ดึงและลบค่าต่ำสุด (ตามการตัดสินโดย ERROR(/Comparator) องค์ประกอบ T ที่ให้มาในคิว

บล็อกจนถึงเวลา timeout เพื่อให้องค์ประกอบพร้อมใช้งาน

พารามิเตอร์
timeout long : ระยะเวลาที่รอให้องค์ประกอบพร้อมใช้งาน

unit TimeUnit : ERROR(/TimeUnit) ของการหมดเวลา

ส่งคืน
T องค์ประกอบที่ตรงกันขั้นต่ำหรือ null หากไม่มีองค์ประกอบที่ตรงกัน

แบบสำรวจความคิดเห็น

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

ดึงและลบค่าต่ำสุด (ตามการตัดสินโดย ERROR(/Comparator) องค์ประกอบ T ที่ให้มาในคิว โดยที่ matcher.matches(T) เป็น true

บล็อกจนถึงเวลา timeout เพื่อให้องค์ประกอบพร้อมใช้งาน

พารามิเตอร์
timeout long : ระยะเวลาที่รอให้องค์ประกอบพร้อมใช้งาน

unit TimeUnit : ERROR(/TimeUnit) ของการหมดเวลา

matcher IMatcher : IMatcher เพื่อใช้ในการประเมินองค์ประกอบ

ส่งคืน
T องค์ประกอบที่ตรงกันขั้นต่ำหรือ null หากไม่มีองค์ประกอบที่ตรงกัน

แบบสำรวจความคิดเห็น

public T poll (IMatcher<T> matcher)

ดึงและลบค่าต่ำสุด (ตามการตัดสินโดย ERROR(/Comparator) องค์ประกอบ T ที่ให้มาในคิว โดยที่ matcher.matches(T) เป็น true

พารามิเตอร์
matcher IMatcher : IMatcher เพื่อใช้ในการประเมินองค์ประกอบ

ส่งคืน
T องค์ประกอบที่ตรงกันขั้นต่ำหรือ null หากไม่มีองค์ประกอบที่ตรงกัน

แบบสำรวจความคิดเห็น

public T poll ()

ดึงและลบส่วนหัวของคิวนี้

ส่งคืน
T ส่วนหัวของคิวนี้ หรือ null หากคิวว่างเปล่า

ลบ

public boolean remove (T object)

ลบรายการออกจากคิวนี้

พารามิเตอร์
object T : วัตถุที่จะลบ

ส่งคืน
boolean true ถ้าวัตถุที่กำหนดถูกลบออกจากคิว false> มิฉะนั้น

ขนาด

public int size ()

ส่งคืน
int จำนวนองค์ประกอบในคิว

เอา

public T take ()

ดึงและลบค่าต่ำสุด (ตามการตัดสินโดย ERROR(/Comparator) องค์ประกอบ T ที่ให้มาในคิว

บล็อกอย่างไม่มีกำหนดเพื่อให้องค์ประกอบพร้อมใช้งาน

ส่งคืน
T หัวคิวแบบนี้

พ่น
InterruptedException หากขัดจังหวะระหว่างรอ

เอา

public T take (IMatcher<T> matcher)

ดึงและลบองค์ประกอบแรก T ในคิวที่ matcher.matches(T) เป็น true รอหากจำเป็นจนกว่าองค์ประกอบดังกล่าวจะพร้อมใช้งาน

พารามิเตอร์
matcher IMatcher : IMatcher เพื่อใช้ในการประเมินองค์ประกอบ

ส่งคืน
T องค์ประกอบที่ตรงกัน

พ่น
InterruptedException หากขัดจังหวะระหว่างรอ