الفرق بين المراجعتين ل"Ruby/IO/close write"

من موسوعة حسوب
< Ruby‏ | IO
اذهب إلى التنقل اذهب إلى البحث
ط (تدقيق)
 
سطر 3: سطر 3:
 
[[تصنيف: Ruby Method]]
 
[[تصنيف: Ruby Method]]
 
[[تصنيف: Ruby IO]]
 
[[تصنيف: Ruby IO]]
يغلق التابع <code>close_write</code> طرف الكتابة الخاص ب[[Ruby/IO|مجرى د/خ]] المزدوج [duplex] (مثلًا إن كان يحتوي على مجرى قراءة وكتابة، مثل الأنابيب [pipes]).  
+
يغلق التابع <code>close_write</code> طرف الكتابة الخاص [[Ruby/IO|بمجرى د/خ]] مزدوج (duplex)؛ أي تلك المجاري التي تحتوي على مجريي قراءة وكتابة، مثل [[Ruby/IO/pipe|الأنابيب]] (pipes).  
  
سيُطلق الاستثناء <code>IOError</code> إذا لم يكن المجرى مزدوجًا.
+
سيُطلق الاستثناء <code>[[Ruby/IOError|IOError]]</code> إن لم يكن المجرى مزدوجًا.
  
تتجاهل روبي استدعاء هذا التابع على [[Ruby/IO|مجاري د/خ]] المغلقة منذ الإصدار 2.3.
+
أصبحت روبي تتجاهل استدعاء هذا التابع على [[Ruby/IO|مجاري د/خ]] المغلقة منذ الإصدار 2.3.
 
==البنية العامة==
 
==البنية العامة==
 
<syntaxhighlight lang="ruby">close_write→ nil‎</syntaxhighlight>
 
<syntaxhighlight lang="ruby">close_write→ nil‎</syntaxhighlight>
==القيمة المُعادة==
+
==القيمة المعادة==
تعاد القيمة <code>nil</code>.
+
تعاد القيمة <code>nil</code> بعد تنفيذ العملية.
  
 
==أمثلة==
 
==أمثلة==
سطر 17: سطر 17:
 
<syntaxhighlight lang="ruby">f = IO.popen("/bin/sh","r+")
 
<syntaxhighlight lang="ruby">f = IO.popen("/bin/sh","r+")
 
f.close_write
 
f.close_write
f.print "nowhere"‎</syntaxhighlight>الناتج:<syntaxhighlight lang="ruby">prog.rb:3:in `write': not opened for writing (IOError)
+
f.print "nowhere"‎</syntaxhighlight>ناتج تنفيذ هذه الشيفرة هو:<syntaxhighlight lang="text">prog.rb:3:in `write': not opened for writing (IOError)
 
  from prog.rb:3:in `print'
 
  from prog.rb:3:in `print'
 
  from prog.rb:3‎</syntaxhighlight>
 
  from prog.rb:3‎</syntaxhighlight>
==انظر أيضا==
+
==انظر أيضًا==
* التابع <code>[[Ruby/IO/close_read|close_read]]</code>: يغلق طرف القراءة الخاص [[Ruby/IO|بمجرى د/خ]] المزدوج.
+
* التابع <code>[[Ruby/IO/close_read|close_read]]</code>: يغلق طرف القراءة الخاص [[Ruby/IO|بمجرى د/خ]] مزدوج (duplex).
* التابع <code>[[Ruby/IO/closed-3F|closed?‎]]</code>: يعيد  القيمة <code>true</code> ان كان [[Ruby/IO|مجرى د/خ]] مغلقًا.
+
* التابع <code>[[Ruby/IO/close|close]]</code>: يغلق [[Ruby/IO|مجرى د/خ]]، ويرسل (flushes) أي كتابات مُعلّقة إلى نظام التشغيل.
 +
* التابع <code>[[Ruby/IO/closed-3F|closed?‎]]</code>: يتحقق إن كان مجرى د/خ مغلقًا تمامًا.
 
==مصادر==
 
==مصادر==
*[http://ruby-doc.org/core-2.5.1/IO.html#method-i-close_write قسم التابع close_write‎ في الصنف IO‎ في توثيق روبي الرسمي.]
+
*[http://ruby-doc.org/core-2.5.1/IO.html#method-i-close_write قسم التابع close_write‎ في الصنف IO‎ في توثيق روبي الرسمي.]

المراجعة الحالية بتاريخ 08:40، 22 ديسمبر 2018

يغلق التابع close_write طرف الكتابة الخاص بمجرى د/خ مزدوج (duplex)؛ أي تلك المجاري التي تحتوي على مجريي قراءة وكتابة، مثل الأنابيب (pipes).

سيُطلق الاستثناء IOError إن لم يكن المجرى مزدوجًا.

أصبحت روبي تتجاهل استدعاء هذا التابع على مجاري د/خ المغلقة منذ الإصدار 2.3.

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

close_write nil

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

تعاد القيمة nil بعد تنفيذ العملية.

أمثلة

مثال على استخدام التابع close_write‎:

f = IO.popen("/bin/sh","r+")
f.close_write
f.print "nowhere"

ناتج تنفيذ هذه الشيفرة هو:

prog.rb:3:in `write': not opened for writing (IOError)
 from prog.rb:3:in `print'
 from prog.rb:3‎

انظر أيضًا

  • التابع close_read: يغلق طرف القراءة الخاص بمجرى د/خ مزدوج (duplex).
  • التابع close: يغلق مجرى د/خ، ويرسل (flushes) أي كتابات مُعلّقة إلى نظام التشغيل.
  • التابع closed?‎: يتحقق إن كان مجرى د/خ مغلقًا تمامًا.

مصادر