الشرط الأولوية الحظر قائمة الانتظار
public class ConditionPriorityBlockingQueue
extends Object
java.lang.Object | |
↳ | com.android.tradefed.util.ConditionPriorityBlockingQueue <T> |
فئة مؤشر الترابط الآمن مع ERROR(/PriorityBlockingQueue)
- مثل العمليات التي يمكنها استرداد الكائنات التي تطابق شرطًا معينًا.
التكرار أيضًا آمن للخيط ، ولكنه غير متسق. يتم عمل نسخة من قائمة الانتظار في وقت إنشاء المكرر ، ويتم استخدام تلك النسخة كهدف للتكرار. إذا تم تعديل قائمة الانتظار أثناء التكرار ، فلن يتم طرح ERROR(/ConcurrentModificationException)
، لكن المكرر لن يعكس أيضًا المحتويات المعدلة.
أنظر أيضا:
ملخص
فئات متداخلة | |
---|---|
class | ConditionPriorityBlockingQueue.AlwaysMatch <T> |
interface | ConditionPriorityBlockingQueue.IMatcher <T> واجهة لتحديد ما إذا كانت العناصر تتطابق مع نوع ما من الشروط. |
المنشأت العامة | |
---|---|
ConditionPriorityBlockingQueue () ينشئ سيتم تحديد أولويات العناصر بترتيب ما يرد أولاً يصرف أولاً (FIFO). | |
ConditionPriorityBlockingQueue ( c) ConditionPriorityBlockingQueue ( c) |
الأساليب العامة | |
---|---|
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) يسترجع ويزيل الحد الأدنى (كما تم الحكم عليه من خلال عنصر |
T | poll (long timeout, TimeUnit unit, IMatcher <T> matcher) يسترجع ويزيل الحد الأدنى (كما تم الحكم عليه من خلال عنصر |
T | poll ( IMatcher <T> matcher) يسترجع ويزيل الحد الأدنى (كما تم الحكم عليه من خلال عنصر |
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 (c)
ينشئ ConditionPriorityBlockingQueue
حدود | |
---|---|
c | ERROR(/Comparator) المستخدم لتحديد أولويات قائمة الانتظار. |
الأساليب العامة
يضيف
public boolean add (T addedElement)
يُدرج العنصر المحدد في قائمة الانتظار هذه. نظرًا لأن قائمة الانتظار غير محدودة ، فلن يتم حظر هذه الطريقة أبدًا.
حدود | |
---|---|
addedElement | T : العنصر المراد إضافته |
عائدات | |
---|---|
boolean | true |
رميات | |
---|---|
| إذا كان العنصر المحدد لا يمكن مقارنته بالعناصر الموجودة حاليًا في قائمة انتظار الأولوية وفقًا لترتيب قائمة انتظار الأولوية |
| إذا كان العنصر المحدد فارغًا |
add فريد
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> خلاف ذلك. |
getCopy
publicgetCopy ()
احصل على نسخة من محتويات قائمة الانتظار.
عائدات | |
---|---|
مكرر
publiciterator ()
عائدات | |
---|---|
تصويت
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 | رئيس هذا الطابور |
رميات | |
---|---|
| إذا انقطعت أثناء الانتظار |
يأخذ
public T take (IMatcher<T> matcher)
يسترجع ويزيل العنصر T الأول في قائمة الانتظار حيث يكون matcher.matches(T) true
، وينتظر إذا لزم الأمر حتى يصبح هذا العنصر متاحًا.
حدود | |
---|---|
matcher | IMatcher : IMatcher المراد استخدامه لتقييم العناصر |
عائدات | |
---|---|
T | العنصر المطابق |
رميات | |
---|---|
| إذا انقطعت أثناء الانتظار |
يخضع كل من المحتوى وعيّنات التعليمات البرمجية في هذه الصفحة للتراخيص الموضحّة في ترخيص استخدام المحتوى. إنّ Java وOpenJDK هما علامتان تجاريتان مسجَّلتان لشركة Oracle و/أو الشركات التابعة لها.
تاريخ التعديل الأخير: 2023-03-30 (حسب التوقيت العالمي المتفَّق عليه)