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