التابع synchronize‎ الخاص بالصنف Mutex في روبي

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث

يحصل التابع synchronize على القفل (lock)، وينفذ الكتلة المعطاة، ثم يحرر القفل عند اكتمال تنفيذ الكتلة.

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

synchronize { ... }  result of the block

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

يعيد التابع synchronize ناتج تنفيذ الكتلة المعطاة.

أمثلة

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

semaphore = Mutex.new

a = Thread.new {
  semaphore.synchronize {
    # access shared resource
  }
}

b = Thread.new {
  semaphore.synchronize {
    # access shared resource
  }
}

انظر أيضا

  • التابع sleep: يحرر القفل وينام لمدة timeout ثانية.
  • التابع try_lock: يحاول الحصول على القفل (lock) والعودة على الفور

مصادر