التابع exit‎ الخاص بالصنف Kernel في روبي

من موسوعة حسوب
< Ruby‏ | Kernel
مراجعة 12:52، 15 نوفمبر 2018 بواسطة جميل-بيلوني (نقاش | مساهمات) (مراجعة وتدقيق)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

يبدأ التابع exit عملية إنهاء البرنامج في روبي، عن طريق إطلاق استثناء SystemExit. من الممكن التقاط هذا الاستثناء.

begin
  exit
  puts "never get here"
rescue SystemExit
  puts "rescued a SystemExit exception"
end
puts "after begin block"

ينتج عند تنفيذه:

rescued a SystemExit exception
after begin block‎

قبل الإنهاء مباشرة، تنفذ روبي كل التوابع والكتل المرتبطة بالشيفرة عبر التابع at_exit، وتنفِّذ كل الكائنات المُنهيَة (object finalizers، راجع ObjectSpace.define_finalizer).

at_exit { puts "at_exit function" }
ObjectSpace.define_finalizer("string",  proc { puts "in finalizer" })
exit

ينتج عند تنفيذ الشيفرة:

at_exit function
in finalizer‎

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

exit(status=true)
Kernel::exit(status=true)
Process::exit(status=true)

المعاملات

status‎

يُستخدم هذا المعامل الاختياري لإعادة رمز الحالة (status code) الخاص ببيئة الاستدعاء. تشير الحالتان true و FALSE إلى النجاح والفشل على التوالي. ويعتمد تفسير قيم الأعداد الأخرى على النظام المُستخدم.

انظر أيضا

  • التابع exit!‎: ينهي العملية على الفور.
  • التابع at_exit: يحول الكتلة البرمجية المعطاة إلى كائن من النوع Proc.

مصادر