التابع IO.fsync‎ في روبي

من موسوعة حسوب
< Ruby‏ | IO
مراجعة 11:00، 22 ديسمبر 2018 بواسطة جميل-بيلوني (نقاش | مساهمات) (تدقيق.)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

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

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

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

fsync 0 or nil

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

تعاد القيمة صفر عند انتهاء عملية الكتابة أو القيمة nil إن لم يكن هنالك أية بيانات لكتابتها.

انظر أيضًا

  • التابع fdatasync: يكتب مباشرةً جميع البيانات المخزنة في مجرى د/خ على القرص.
  • التابع flush: ينقل أي بيانات مخزَّنة في المجرى الذي استدعي معه إلى نظام التشغيل.

مصادر