الفرق بين المراجعتين لصفحة: «Ruby/SizedQueue/pop»
< Ruby | SizedQueue
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>pop</code> الخاص بالصنف <code>SizedQueue</code> في روبي}}</noinclude> تصنيف: Ruby تصن...' |
لا ملخص تعديل |
||
سطر 4: | سطر 4: | ||
[[تصنيف: Ruby SizedQueue]] | [[تصنيف: Ruby SizedQueue]] | ||
يسترد التابع <code>pop</code> البيانات من ال[[Ruby/SizedQueue|طابور]]. | يسترد التابع <code>pop</code> البيانات من ال[[Ruby/SizedQueue|طابور]]. | ||
إن كان ال[[Ruby/SizedQueue|طابور]] فارغًا، يتم تعليق ال[[Ruby/Thread|مهمة فرعية]] | |||
إن كان ال[[Ruby/SizedQueue|طابور]] فارغًا، يتم تعليق ال[[Ruby/Thread|مهمة فرعية]] المُستدعية (calling thread) حتى يتم دفع البيانات إلى ال[[Ruby/SizedQueue|طابور]]. إن كانت قيمة <code>non_block</code> (انظر فقرة البنية العامة) تساوي <code>true</code>، فلن يتم تعليق ال[[Ruby/Thread|مهمة فرعية]]، وسيُطلق الاستثناء <code>ThreadError</code>. | |||
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="ruby">pop(non_block=false) | <syntaxhighlight lang="ruby">pop(non_block=false) | ||
سطر 11: | سطر 12: | ||
==المعاملات== | ==المعاملات== | ||
===<code>non_block</code>=== | ===<code>non_block</code>=== | ||
إن كانت قيمة <code>non_block</code> تساوي <code>true</code>، فلن يتم تعليق ال[[Ruby/Thread|مهمة فرعية]]، وسيُطلق الاستثناء <code>ThreadError</code>. | |||
==انظر أيضا== | ==انظر أيضا== | ||
* التابع <code>[[Ruby/SizedQueue/num_waiting|num_waiting]]</code>: يعيد عدد ال[[Ruby/Thread| | * التابع <code>[[Ruby/SizedQueue/num_waiting|num_waiting]]</code>: يعيد عدد ال[[Ruby/Thread|مهام الفرعية]] التي تنتظر في ال[[Ruby/SizedQueue|طابور]]. | ||
* التابع <code>[[Ruby/SizedQueue/push|push]]</code>: يدفع (Pushes) | * التابع <code>[[Ruby/SizedQueue/push|push]]</code>: يدفع (Pushes) كائنا إلى ال[[Ruby/SizedQueue|طابور]]. | ||
==مصادر== | ==مصادر== | ||
*[http://ruby-doc.org/core-2.5.1/SizedQueue.html#method-i-pop قسم التابع pop في الصنف SizedQueue في توثيق روبي الرسمي.] | *[http://ruby-doc.org/core-2.5.1/SizedQueue.html#method-i-pop قسم التابع pop في الصنف SizedQueue في توثيق روبي الرسمي.] |
مراجعة 10:55، 2 نوفمبر 2018
يسترد التابع pop
البيانات من الطابور.
إن كان الطابور فارغًا، يتم تعليق المهمة فرعية المُستدعية (calling thread) حتى يتم دفع البيانات إلى الطابور. إن كانت قيمة non_block
(انظر فقرة البنية العامة) تساوي true
، فلن يتم تعليق المهمة فرعية، وسيُطلق الاستثناء ThreadError
.
البنية العامة
pop(non_block=false)
deq(non_block=false)
shift(non_block=false)
المعاملات
non_block
إن كانت قيمة non_block
تساوي true
، فلن يتم تعليق المهمة فرعية، وسيُطلق الاستثناء ThreadError
.
انظر أيضا
- التابع
num_waiting
: يعيد عدد المهام الفرعية التي تنتظر في الطابور. - التابع
push
: يدفع (Pushes) كائنا إلى الطابور.