التابع Mutex.synchronize في روبي
يطبِّق التابع synchronize القفل (lock) وينفذ الكتلة المعطاة، ثم يحرر القفل عند اكتمال تنفيذ الكتلة.
البنية العامة
synchronize { ... } → result of the block
القيمة المعادة
يعاد ناتج تنفيذ الكتلة المعطاة.
أمثلة
مثال على استخدام التابع synchronize:
semaphore = Mutex.new
a = Thread.new {
semaphore.synchronize {
# access shared resource
}
}
b = Thread.new {
semaphore.synchronize {
# access shared resource
}
}
انظر أيضا
- التابع
sleep: يحرر القفل وينام لمدة محدَّدة من الثواني. - التابع
try_lock: يحاول الحصول على القفل (lock) والعودة مباشرةً.