الفرق بين المراجعتين ل"Ruby/SizedQueue/pop"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<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|مهمة فرعية]] المُستدعي (calling thread) حتى تُرسل البيانات إلى ال[[Ruby/SizedQueue|طابور]]. إن كانت قيمة <code>non_block</code> (انظر فقرة البنية العامة) تساوي true، فلن يتم تعليق ال[[Ruby/Thread|مهمة فرعية]]، وسيُطلق الاستثناء <code>ThreadError</code>.
+
 
 +
إن كان ال[[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|مهمة فرعية]] التي تنتظر في ال[[Ruby/SizedQueue|طابور]].
+
* التابع <code>[[Ruby/SizedQueue/num_waiting|num_waiting]]</code>: يعيد  عدد ال[[Ruby/Thread|مهام الفرعية]] التي تنتظر في ال[[Ruby/SizedQueue|طابور]].
* التابع <code>[[Ruby/SizedQueue/push|push]]</code>: يدفع (Pushes)  الوسيط <code>object</code> إلى ال[[Ruby/SizedQueue|طابور]].
+
* التابع <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.

انظر أيضا

مصادر