التابع sleep الخاص بالصنف Mutex في روبي
يحرر التابع sleep القفل (lock)، وينام لمدة timeout ثانية إذا تم تمرير الوسيط timeout وكانت قيمته تخالف nil أو اللا نهائية (forever). يطلق الخطأ ThreadError إذا لم يتم مسك الكائنmutex من قبل المهمة الفرعية (thread) الحالية.
عندما تُستأنف المهمة الفرعية، ستحاول تلك المهمة استعادة القفل (reacquire the lock).
لاحظ أنه يمكن تنبيه (wakeup) هذا التابع دون استدعاء Thread#wakeup بشكل صريح. كما يحدث، على سبيل المثال، عند تلقي إشارة.
البنية العامة
sleep(timeout = nil) → number
المعاملات
timeout
عدد الثواني.
القيمة المُعادة
يعيد عددا صحيحا.
انظر أيضا
- التابع
owned?: يعيد القيمةtrueإن كان هذا القفل ممسوكًا حاليًا من قبل المهمة الفرعية (thread) الحالية. - التابع
synchronize: يحصل على القفل (lock)، وينفذ الكتلة المعطاة، ثم يحرر القفل عند اكتمال تنفيذ الكتلة.