الفرق بين المراجعتين لصفحة: «Ruby/IO/close on exec-3D»
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>IO.close_on_exec=</code> في روبي}}</noinclude> تصنيف: Ruby تصنيف: Ruby Method تصنيف...' |
لا ملخص تعديل |
||
سطر 3: | سطر 3: | ||
[[تصنيف: Ruby Method]] | [[تصنيف: Ruby Method]] | ||
[[تصنيف: Ruby IO]] | [[تصنيف: Ruby IO]] | ||
يعين | يعين التعبير <code>close_on_exec =</code> قيمة الراية close-on-exec. | ||
تعيّن روبي الرايات close-on-exec لكل واصفات الملفات (file descriptors) افتراضيًا منذ الإصدار 2.0.0. لذلك لا تحتاج إلى تعيينها بنفسك. أيضاً، قد يؤدي إبطال الراية close-on-exec إلى حدوث تسرب لواصف الملف إن استخدمت [[Ruby/Thread|مهمة فرعية]] أخرى التابعين <code>fork()</code> و <code>exec()</code> (عبر التابع <code>system()</code> على سبيل المثال). إن كنت بحاجة إلى توريث واصف الملفات في عملية فرعية (child process)، فاستخدم وسيط التابع <code>spawn()</code> مثل <code>fd => fd</code>. | |||
تعيّن روبي الرايات close-on-exec لكل واصفات الملفات (file descriptors) افتراضيًا منذ الإصدار 2.0.0. لذلك لا تحتاج إلى تعيينها بنفسك. أيضاً، قد يؤدي إبطال الراية | |||
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="ruby">close_on_exec = bool → true or false</syntaxhighlight> | <syntaxhighlight lang="ruby">close_on_exec = bool → true or false</syntaxhighlight> | ||
==القيمة المُعادة== | ==القيمة المُعادة== | ||
تعاد قيمة منطقية. | |||
==أمثلة== | ==أمثلة== | ||
مثال على استخدام | مثال على استخدام التعبير<code>close_on_exec =</code>: | ||
<syntaxhighlight lang="ruby">f = open("/dev/null") | <syntaxhighlight lang="ruby">f = open("/dev/null") | ||
f.close_on_exec = true | f.close_on_exec = true | ||
سطر 18: | سطر 18: | ||
f.closed? #=> false</syntaxhighlight> | f.closed? #=> false</syntaxhighlight> | ||
==انظر أيضا== | ==انظر أيضا== | ||
* التابع <code>[[Ruby/IO/close|close]]</code>: يغلق [[Ruby/IO|مجرى د/خ]] | * التابع <code>[[Ruby/IO/close|close]]</code>: يغلق [[Ruby/IO|مجرى د/خ]]، ويرسل (flushes) أي كتابات مُعلّقة إلى نظام التشغيل. | ||
* التابع <code>[[Ruby/IO/close_on_exec-3F|close_on_exec?]]</code>: يُعيد القيمة <code>true</code> إن كانت الراية close_on_exec الخاصة ب[[Ruby/IO|مجرى د/خ]] <code> | * التابع <code>[[Ruby/IO/close_on_exec-3F|close_on_exec?]]</code>: يُعيد القيمة <code>true</code> إن كانت الراية close_on_exec الخاصة ب[[Ruby/IO|مجرى د/خ]] تساوي <code>true</code>. | ||
==مصادر== | ==مصادر== | ||
*[http://ruby-doc.org/core-2.5.1/IO.html#method-i-close_on_exec-3D قسم التابع close_on_exec= في الصنف IO في توثيق روبي الرسمي.] | *[http://ruby-doc.org/core-2.5.1/IO.html#method-i-close_on_exec-3D قسم التابع close_on_exec= في الصنف IO في توثيق روبي الرسمي.] |
مراجعة 12:09، 13 نوفمبر 2018
يعين التعبير 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
.