الفرق بين المراجعتين ل"Ruby/Mutex/synchronize"
اذهب إلى التنقل
اذهب إلى البحث
جميل-بيلوني (نقاش | مساهمات) ط (مراجعة وتدقيق.) |
|||
سطر 1: | سطر 1: | ||
− | <noinclude>{{DISPLAYTITLE: التابع <code>synchronize | + | <noinclude>{{DISPLAYTITLE: التابع <code>Mutex.synchronize</code> في روبي}}</noinclude> |
[[تصنيف: Ruby]] | [[تصنيف: Ruby]] | ||
[[تصنيف: Ruby Method]] | [[تصنيف: Ruby Method]] | ||
[[تصنيف: Ruby Mutex]] | [[تصنيف: Ruby Mutex]] | ||
− | + | يطبِّق التابع <code>synchronize</code> القفل (lock) وينفذ الكتلة المعطاة، ثم يحرر القفل عند اكتمال تنفيذ الكتلة. | |
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="ruby">synchronize { ... } → result of the block</syntaxhighlight> | <syntaxhighlight lang="ruby">synchronize { ... } → result of the block</syntaxhighlight> | ||
− | ==القيمة | + | ==القيمة المعادة== |
− | + | يعاد ناتج تنفيذ الكتلة المعطاة. | |
== أمثلة == | == أمثلة == | ||
سطر 24: | سطر 24: | ||
}</syntaxhighlight> | }</syntaxhighlight> | ||
==انظر أيضا== | ==انظر أيضا== | ||
− | * التابع <code>[[Ruby/Mutex/sleep|sleep]]</code>: يحرر | + | * التابع <code>[[Ruby/Mutex/sleep|sleep]]</code>: يحرر القفل وينام لمدة محدَّدة من الثواني. |
− | * التابع <code>[[Ruby/Mutex/try_lock|try_lock]]</code>: يحاول | + | * التابع <code>[[Ruby/Mutex/try_lock|try_lock]]</code>: يحاول الحصول على القفل (lock) والعودة مباشرةً. |
==مصادر== | ==مصادر== | ||
− | *[http://ruby-doc.org/core-2.5.1/Mutex.html#method-i-synchronize قسم | + | *[http://ruby-doc.org/core-2.5.1/Mutex.html#method-i-synchronize قسم التابع synchronize في الصنف Mutex في توثيق روبي الرسمي.] |
المراجعة الحالية بتاريخ 05:51، 20 نوفمبر 2018
يطبِّق التابع 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) والعودة مباشرةً.