التابع Process.waitall في روبي

من موسوعة حسوب
< Ruby‏ | Process

ينتظر التابع waitall جميع العمليات الأبناء للعملية الحالية ثم يعيد مصفوفة تحوي الأزواج مُعرِّف_العملية/الحالة (pid/status).

البنية العامة

waitall  [ [pid1,status1], ...]

القيم المعادة

تعاد مصفوفة تحوي الأزواج مُعرِّف_العملية/الحالة (pid/status) لجميع العمليات الأبناء بعد انتظار خروجها.

أمثلة

مثال على استعمال التابع waitall:

fork { sleep 0.2; exit 2 }   #=> 27432
fork { sleep 0.1; exit 1 }   #=> 27433
fork {            exit 0 }   #=> 27434
p Process.waitall

ناتج تنفيذ هذا المثال هو:

[[30982, #<Process::Status: pid 30982 exit 0>],
 [30979, #<Process::Status: pid 30979 exit 1>],
 [30976, #<Process::Status: pid 30976 exit 2>]]

انظر أيضًا

  • التابع wait: ينتظر خروج العملية الابن ثم يعيد مُعرِّفها ويضبط ?$ إلى قيمة الكائن Process::Status الذي يحوي معلومات حول تلك العملية.
  • التابع wait2: ينتظر خروج العملية الابن ثم يعيد مصفوفة تحوي مُعرِّف وحالة الخروج (كائنًا من النوع Process::Status) تلك العملية.

مصادر