التابع 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) والعودة مباشرةً.