صف مسدودکننده اولویت شرط
public class ConditionPriorityBlockingQueue
extends Object implements Iterable<T>
| شیء جاوا | |
| ↳ | com.android.tradefed.util.ConditionPriorityBlockingQueue<T> |
یک کلاس thread-safe با عملیات شبیه PriorityBlockingQueue که میتواند اشیاء منطبق با یک شرط خاص را بازیابی کند.
تکرار نیز thread-safe است، اما سازگار نیست. یک کپی از صف در زمان ایجاد تکرارکننده ایجاد میشود و آن کپی به عنوان هدف تکرار استفاده میشود. اگر صف در طول تکرار تغییر کند، خطای ConcurrentModificationException رخ نمیدهد، اما تکرارکننده نیز محتوای تغییر یافته را منعکس نمیکند.
همچنین ببینید:
خلاصه
کلاسهای تو در تو | |
|---|---|
class | ConditionPriorityBlockingQueue.AlwaysMatch <T> یک |
interface | ConditionPriorityBlockingQueue.IMatcher <T>رابطی برای تعیین اینکه آیا عناصر با نوعی شرط مطابقت دارند یا خیر. |
سازندگان عمومی | |
|---|---|
ConditionPriorityBlockingQueue () یک عناصر به ترتیب FIFO اولویتبندی خواهند شد. | |
ConditionPriorityBlockingQueue (Comparator<T> c) یک | |
روشهای عمومی | |
|---|---|
boolean | add (T addedElement)عنصر مشخص شده را در این صف قرار میدهد. |
T | addUnique ( IMatcher <T> matcher, T object)یک آیتم به این صف اضافه میکند و هر شیء موجودی را که با شرط داده شده مطابقت دارد، جایگزین میکند. |
void | clear ()تمام عناصر را از این صف حذف میکند. |
boolean | contains (T object)تعیین میکند که آیا شیء در حال حاضر در این صف قرار دارد یا خیر. |
List<T> | getCopy ()یک کپی از محتویات صف دریافت کنید. |
Iterator<T> | iterator () |
T | poll ( IMatcher <T> matcher) حداقل مقدار (مطابق با عنصر |
T | poll (long timeout, TimeUnit unit, IMatcher <T> matcher) حداقل مقدار (مطابق با عنصر |
T | poll (long timeout, TimeUnit unit) حداقل مقدار (مطابق با عنصر |
T | poll ()سر این صف را بازیابی و حذف میکند. |
boolean | remove (T object)یک آیتم را از این صف حذف میکند. |
int | size () |
T | take () حداقل مقدار (مطابق با عنصر |
T | take ( IMatcher <T> matcher) اولین عنصر T را در صف که matcher.matches(T) |
سازندگان عمومی
صف مسدودکننده اولویت شرط
public ConditionPriorityBlockingQueue ()
یک ConditionPriorityBlockingQueue ایجاد میکند
عناصر به ترتیب FIFO اولویتبندی خواهند شد.
صف مسدودکننده اولویت شرط
public ConditionPriorityBlockingQueue (Comparator<T> c)
یک ConditionPriorityBlockingQueue ایجاد میکند
| پارامترها | |
|---|---|
c | Comparator : Comparator که برای اولویتبندی صف استفاده میشود. |
روشهای عمومی
اضافه کردن
public boolean add (T addedElement)
عنصر مشخص شده را در این صف درج میکند. از آنجایی که صف نامحدود است، این متد هرگز مسدود نمیشود.
| پارامترها | |
|---|---|
addedElement | T : عنصری که باید اضافه شود |
| بازگشتها | |
|---|---|
boolean | true |
| پرتابها | |
|---|---|
ClassCastException | اگر عنصر مشخص شده را نتوان با عناصر موجود در صف اولویتدار، بر اساس ترتیب صف اولویتدار، مقایسه کرد |
NullPointerException | اگر عنصر مشخص شده تهی (null) باشد |
اضافه کردن منحصر به فرد
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 List<T> getCopy ()
یک کپی از محتویات صف دریافت کنید.
| بازگشتها | |
|---|---|
List<T> | |
تکرارکننده
public Iterator<T> iterator ()
| بازگشتها | |
|---|---|
Iterator<T> | |
نظرسنجی
public T poll (IMatcher<T> matcher)
حداقل مقدار (مطابق با عنصر Comparator T ارائه شده در صف که matcher.matches(T) true است) را بازیابی و حذف میکند.
| پارامترها | |
|---|---|
matcher | IMatcher : IMatcher مورد استفاده برای ارزیابی عناصر |
| بازگشتها | |
|---|---|
T | حداقل عنصر منطبق یا اگر هیچ عنصر منطبقی وجود نداشته باشد null |
نظرسنجی
public T poll (long timeout,
TimeUnit unit,
IMatcher<T> matcher)حداقل مقدار (مطابق با عنصر Comparator T ارائه شده در صف که matcher.matches(T) true است) را بازیابی و حذف میکند.
تا زمان timeout ، دسترسی به یک عنصر را مسدود میکند.
| پارامترها | |
|---|---|
timeout | long : مدت زمانی که باید منتظر بمانیم تا یک عنصر در دسترس قرار گیرد. |
unit | TimeUnit : واحد TimeUnit مربوط به زمان انقضا |
matcher | IMatcher : IMatcher مورد استفاده برای ارزیابی عناصر |
| بازگشتها | |
|---|---|
T | حداقل عنصر منطبق یا اگر هیچ عنصر منطبقی وجود نداشته باشد null |
| پرتابها | |
|---|---|
InterruptedException | |
نظرسنجی
public T poll (long timeout,
TimeUnit unit)حداقل مقدار (مطابق با عنصر Comparator T موجود در صف) را بازیابی و حذف میکند.
تا زمان timeout ، دسترسی به یک عنصر را مسدود میکند.
| پارامترها | |
|---|---|
timeout | long : مدت زمانی که باید منتظر بمانیم تا یک عنصر در دسترس قرار گیرد. |
unit | TimeUnit : واحد TimeUnit مربوط به زمان انقضا |
| بازگشتها | |
|---|---|
T | حداقل عنصر منطبق یا اگر هیچ عنصر منطبقی وجود نداشته باشد null |
| پرتابها | |
|---|---|
InterruptedException | |
نظرسنجی
public T poll ()
سر این صف را بازیابی و حذف میکند.
| بازگشتها | |
|---|---|
T | سر این صف، یا اگر صف خالی باشد null |
حذف
public boolean remove (T object)
یک آیتم را از این صف حذف میکند.
| پارامترها | |
|---|---|
object | T : شیئی که باید حذف شود |
| بازگشتها | |
|---|---|
boolean | اگر شیء داده شده از صف حذف شده باشد، true و در غیر این صورت false> برمیگرداند. |
اندازه
public int size ()
| بازگشتها | |
|---|---|
int | تعداد عناصر در صف |
گرفتن
public T take ()
حداقل مقدار (مطابق با عنصر Comparator T موجود در صف) را بازیابی و حذف میکند.
به طور نامحدود دسترسی به یک عنصر را مسدود میکند.
| بازگشتها | |
|---|---|
T | سر این صف |
| پرتابها | |
|---|---|
InterruptedException | اگر در حین انتظار قطع شود |
گرفتن
public T take (IMatcher<T> matcher)
اولین عنصر T را در صف که matcher.matches(T) true است، بازیابی و حذف میکند و در صورت لزوم منتظر میماند تا چنین عنصری در دسترس قرار گیرد.
| پارامترها | |
|---|---|
matcher | IMatcher : IMatcher مورد استفاده برای ارزیابی عناصر |
| بازگشتها | |
|---|---|
T | عنصر منطبق |
| پرتابها | |
|---|---|
InterruptedException | اگر در حین انتظار قطع شود |
محتوا و نمونه کدها در این صفحه مشمول پروانههای توصیفشده در پروانه محتوا هستند. جاوا و OpenJDK علامتهای تجاری یا علامتهای تجاری ثبتشده Oracle و/یا وابستههای آن هستند.
تاریخ آخرین بهروزرسانی 2026-06-22 بهوقت ساعت هماهنگ جهانی.