الفرق بين المراجعتين لصفحة: «Ruby/IO/fsync»

من موسوعة حسوب
< Ruby‏ | IO
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>IO.fsync‎</code> في روبي}}</noinclude> تصنيف: Ruby تصنيف: Ruby Method تصنيف: Ruby IO...'
 
لا ملخص تعديل
سطر 3: سطر 3:
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby IO]]
[[تصنيف: Ruby IO]]
يكتب التابع <code>fsync</code> على الفور جميع البيانات المخزنة في [[Ruby/IO|مجرى د/خ]] <code>ios</code> في القرص. لاحظ أن <code>fsync</code> يختلف عن استخدام <code>IO#sync=</code>. حيث يضمن الأخير أن تُرسل البيانات من المخازن المؤقتة (buffers) لروبي، ​​ولكنه لا يضمن أنّ نظام التشغيل سيكتبها بالفعل في القرص.
يكتب التابع <code>fsync</code> على الفور جميع البيانات المخزنة في [[Ruby/IO|مجرى د/خ]] <code>ios</code> على القرص. لاحظ أن <code>fsync</code> يختلف عن استخدام <code>IO#sync=</code>. حيث يضمن الأخير أن تُرسل البيانات من المخازن المؤقتة (buffers) لروبي، ​​ولكنه لا يضمن أنّ نظام التشغيل سيكتبها بالفعل على القرص.


سيُطلق الاستثناء <code>NotImplementedError</code> إن لم يكن نظام التشغيل يدعم <code>fsync(2)</code>.
سيُطلق الاستثناء [[Ruby/NotImplementedError|NotImplementedError]] إن لم يكن نظام التشغيل يدعم <code>fsync(2)</code>.
==البنية العامة==
==البنية العامة==
<syntaxhighlight lang="ruby">fsync→ 0 or nil‎</syntaxhighlight>
<syntaxhighlight lang="ruby">fsync→ 0 or nil‎</syntaxhighlight>
==القيمة المُعادة==
==القيمة المُعادة==
يعيد التابع <code>fsync</code>القيمة صفر أو <code>nil</code>.
==انظر أيضا==
==انظر أيضا==
* التابع <code>[[Ruby/IO/flush|flush]]</code>: يرسل (Flushes)  أي بيانات مخزنة في [[Ruby/IO|مجرى د/خ]] <code>ios</code> إلى نظام التشغيل (لاحظ أن هذا لا يشمل إلا التخزين المؤقت الداخلي لروبي؛ وقد يقوم نظام التشغيل بتخزين البيانات أيضًا).
*التابع <code>[[Ruby/IO/flush|flush]]</code>: ينقل (Flushes)  أي بيانات مخزنة في [[Ruby/IO|مجرى د/خ]] <code>ios</code> إلى نظام التشغيل
* التابع <code>[[Ruby/IO/getbyte|getbyte]]</code>: يحصل  على البايت (8-bit byte) الموالي (0..255) من [[Ruby/IO|مجرى د/خ]] <code>ios</code>. ويُعيد <code>nil</code> إن استُدعي عند نهاية الملف.
*التابع <code>[[Ruby/IO/fdatasync|fdatasync]]</code>: يكتب على الفور جميع البيانات المخزنة في [[Ruby/IO|مجرى د/خ]] على القرص.
==مصادر==
==مصادر==
*[http://ruby-doc.org/core-2.5.1/IO.html#method-i-fsync قسم  التابع fsync‎ في الصنف IO‎ في توثيق روبي الرسمي.]
*[http://ruby-doc.org/core-2.5.1/IO.html#method-i-fsync قسم  التابع fsync‎ في الصنف IO‎ في توثيق روبي الرسمي.]

مراجعة 14:07، 13 نوفمبر 2018

يكتب التابع fsync على الفور جميع البيانات المخزنة في مجرى د/خ ios على القرص. لاحظ أن fsync يختلف عن استخدام IO#sync=‎. حيث يضمن الأخير أن تُرسل البيانات من المخازن المؤقتة (buffers) لروبي، ​​ولكنه لا يضمن أنّ نظام التشغيل سيكتبها بالفعل على القرص.

سيُطلق الاستثناء NotImplementedError إن لم يكن نظام التشغيل يدعم fsync(2)‎.

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

fsync 0 or nil

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

يعيد التابع fsyncالقيمة صفر أو nil.

انظر أيضا

  • التابع flush: ينقل (Flushes) أي بيانات مخزنة في مجرى د/خ ios إلى نظام التشغيل
  • التابع fdatasync: يكتب على الفور جميع البيانات المخزنة في مجرى د/خ على القرص.

مصادر