نتائج البحث
اذهب إلى التنقل
اذهب إلى البحث
الصنف Signal في روبي
تسمح العديد من أنظمة التشغيل بإرسال إشارات إلى العمليات (processes) قيد التشغيل للتحكم بها. بعض الإشارات لها تأثير محدد على العملية، بينما تكون أخرى مرتبطة بالشيفرة البرمجية، وتتصرف بناء عليها. على سبيل المثال، قد تقوم العملية بإمساك (trap) الإشارة USR1 واستخدامها في عملية التنقيح (debugging)، أو قد تُستخدَم الإشارة TERM لبدء إيقاف تشغيل العملية بشكل مُراقَب. pid = fork do
Signal.trap("USR1") do
$debug = !$debug
puts "Debug now: #$debug"
end
Signal.trap("TERM") ...
التابع ConditionVariable.signal في روبي
يوقظ التابع signal أول مهمة فرعية من بين المهام الفرعية (threads) التي تنتظر قفلًا (lock) معيَّنًا. البنية العامة signal()
انظر أيضًا التابع broadcast: يوقظ جميع المهام الفرعية (threads) التي تنتظر القفل (lock) المعيّن. التابع wait: يحرِّر القفل المطبَّق (held) على الكائن mutex وينتظر، ثمَّ يستعيد القفل عند الإستيقاظ. مصادر قسم التابع signal في الصنف ConditionVariable في توثيق روبي الرسمي.
التابع ?Process::Status.signaled في روبي
يتحقَّق التابع ?signaled إذا كانت الحالة stat للعملية تشير إلى أنَّها أُنهيت بسبب إشارةٍ غير ملتقطة (uncaught signal). البنية العامة signaled? → true or false
القيم المعادة تُعاد القيمة true إذا كانت الحالة stat للعملية المعطاة تشير إلى أنَّها قد أُنهيت بسبب إشارةٍ غير ملتقطة؛ خلاف ذلك، تُعاد القيمة false. انظر أيضًا التابع ?coredump: يتحقَّق إذا كانت حالة العمليَّة قد ولَّدت تفريغًا للذاكرة عندما أُنهيت. التابع ?exited: يتحقَّق إذا كانت حالة العمليَّة stat قد أُنهيَت بشكلٍ طبيعي. التابع ?stopped: يتحقَّق ...
التابع ?Process::Status.signaled في روبي
يتحقَّق التابع ?signaled إذا كانت الحالة stat للعملية تشير إلى أنَّها أُنهيت بسبب إشارةٍ غير ملتقطة (uncaught signal). البنية العامة signaled? → true or false
القيم المعادة تُعاد القيمة true إذا كانت الحالة stat للعملية المعطاة تشير إلى أنَّها قد أُنهيت بسبب إشارةٍ غير ملتقطة؛ خلاف ذلك، تُعاد القيمة false. انظر أيضًا التابع ?coredump: يتحقَّق إذا كانت حالة العمليَّة قد ولَّدت تفريغًا للذاكرة عندما أُنهيت. التابع ?exited: يتحقَّق إذا كانت حالة العمليَّة stat قد أُنهيَت بشكلٍ طبيعي. التابع ?stopped: يتحقَّق ...
التابع Signal.trap في روبي
يربط التابع trap معالجًا بإشارة محدَّدة. البنية العامة trap( signal, command ) → obj
trap( signal ) {| | block } → obj
يمثل المعامل signal اسم إشارة (سلسلة نصية مثل "SIGALRM" أو "SIGUSR1" وغير ذلك) أو رقم إشارة. يمكن حذف الأحرف "SIG" من اسم الإشارة. تحدد التعليمة command أو الكتلة block المعطاة الشيفرة أو الأوامر المراد تنفيذها عند إطلاق الإشارة. إذا كانت التعليمة تساوي السلسلة النصية "IGNORE" أو "SIG_IGN"، فسيتم تجاهل الإشارة. أما إذا كانت تساوي "DEFAULT" أو "SIG_DFL"، فسيُستدعَى معالج ...
التابع Process.kill في روبي
يرسل التابع kill إشارة محدَّدة إلى عملية ذات مُعرِّف معطى أو إلى جميع العمليات التي معرِّف المجموعة التي تملكه مساويًا إلى معرِّف المجموعة للعملية المستدعية. البنية العامة kill(signal, pid, ...) → integer
المعاملات signal عدد صحيح يمثِّل رقم الإشارة أو سلسلة نصية تمثِّل اسم الإشارة بحسب POSIX (مع أو بدون السابقة SIG). إن كان عددًا صحيحًا موجبًا، إن كان عددًا سالبًا (يبدأ بإشارة الناقص)، فستُقتَل مجموعات العملية (process groups) بدلًا من العمليات. ليست جميع الإشارات مدعومة على كل المنصات. مفاتيح وقيم ...
التابع ConditionVariable.wait في روبي
يحرِّر التابع wait القفل المطبَّق (held) على الكائن mutex وينتظر، ثمَّ يستعيد القفل عند الإستيقاظ. في حال تمرير الوسيط timeout (انظُر فقرة البنية العامة)، يُعيِد هذا التابع بعد مرور timeout ثانية، حتى في حال عدم الإشارة (signal) من خيط آخر (thread). البنية العامة wait(mutex, timeout=nil)
المعاملات mutex كائنٌ من النوع Mutex. timeout يمثل عدد الثواني التي يجب أن ينتظرها التابع قبل الإعادة، قيمته الإفتراضية هي: nil. انظر أيضًا التابع signal: يوقظ أول مهمة فرعية من بين المهام الفرعية (threads) التي تنتظر القفل (lock) المعيّن. ...
التابع trap الخاص بالصنف Kernel في روبي
يحدد التابع trap معالج الإشارات (handling of signals). الوسيط الأول يمثل اسم إشارة (سلسلة نصية مثل "SIGALRM" أو "SIGUSR1" وغير ذلك) أو رقم إشارة. يمكن حذف الأحرف "SIG" من اسم الإشارة. تحدد التعليمة command أو الكتلة المعطاة الكود البرمجي المراد تشغيله عند إطلاق الإشارة. إذا كانت التعليمة تساوي السلسلة النصية "IGNORE" أو "SIG_IGN" ، فسيتم تجاهل الإشارة. أما إذا كانت تساوي "DEFAULT" أو "SIG_DFL" ، فسيُستدعى معالج روبي الافتراضي. لكن إذا كانت تساوي "EXIT" ، فستنهي الإشارة البرنامج النصي. إذا ...
التابع ConditionVariable.broadcast في روبي
يوقظ التابع broadcast جميع المهام الفرعية (threads) التي تنتظر قفًلًا (lock) معيَّنًا. البنية العامة broadcast()
انظر أيضًا التابع signal: يوقظ أول مهمة فرعية من بين المهام الفرعية (threads) التي تنتظر القفل (lock) المعيّن. التابع wait: يحرِّر القفل المطبَّق (held) على الكائن mutex وينتظر، ثمَّ يستعيد القفل عند الإستيقاظ. مصادر قسم التابع broadcast في الصنف ConditionVariable في توثيق روبي الرسمي.
الصنف SignalException في روبي
يًطللق الاستثناء SignalException عند تلقي إشارة ما. begin
Process.kill('HUP',Process.pid)
sleep # wait for receiver to handle signal sent by Process.kill
rescue SignalException => e
puts "received Exception #{e}"
end
سيُنتج عن تنفيذ هذه الشيفرة ما يلي: received Exception SIGHUP
توابع الصنف العامة new ينشئ كائنًا جديدًا من النوع SignalException. توابع النسخة العامة signo يعيد رقم إشارة. مصادر صفحة الصنف SignalException في توثيق روبي الرسمي.