التابع IO.close_on_exec=
في روبي
يعين التعبير close_on_exec =
قيمة الراية close-on-exec.
تعيّن روبي الرايات close-on-exec لكل واصفات الملفات (file descriptors) افتراضيًا منذ الإصدار 2.0.0. لذلك لا تحتاج إلى تعيينها بنفسك. أيضاً، قد يؤدي إبطال الراية close-on-exec إلى حدوث تسرب لواصف الملف إن استخدمت مهمة فرعية أخرى التابعين fork()
و exec()
(عبر التابع system()
على سبيل المثال). إن كنت بحاجة إلى توريث واصف الملفات في عملية فرعية (child process)، فاستخدم وسيط التابع spawn()
مثل fd => fd
.
البنية العامة
close_on_exec = bool → true or false
القيمة المُعادة
تعاد قيمة منطقية.
أمثلة
مثال على استخدام التعبيرclose_on_exec =
:
f = open("/dev/null")
f.close_on_exec = true
system("cat", "/proc/self/fd/#{f.fileno}") # cat: /proc/self/fd/3: No such file or directory
f.closed? #=> false
انظر أيضا
- التابع
close
: يغلق مجرى د/خ، ويرسل (flushes) أي كتابات مُعلّقة إلى نظام التشغيل. - التابع
close_on_exec?
: يُعيد القيمةtrue
إن كانت الراية close_on_exec الخاصة بمجرى د/خ تساويtrue
.