الأقفال الصريحة
في هذا الدرس 4 موضوعات
هذا الدرس مخطط له. يعرض المخطط أدناه الموضوعات التي سيغطيها، ولم يُنشر الدرس الكامل بعد.
نص الدروس والتمارين باللغة الإنجليزية، بينما تبقى واجهة الموقع وعناوين الدروس بالعربية.
في هذا الدرس
know when ReentrantLock beats synchronized.
الموضوعات المخطط لها
ReentrantLockofferstryLock(with timeout), interruptible locking, and fairness options.- Always unlock in
finally. ReadWriteLock/StampedLockhelp read-heavy data, but measure before adopting.Conditionreplaceswait/notifywith several wait sets.- Default to
synchronizedfor simplicity; use explicit locks for the extra features.
تفاصيل المخطط المبدئي
عرض عملي
if (lock.tryLock(100, TimeUnit.MILLISECONDS)) {
try { reserve(qty); } finally { lock.unlock(); }
}اختبر فهمك
Where must unlock() go?
أظهر الإجابة
In a finally block.
التطبيق
طبّق هذا الدرس بمختبر الوحدة وتمارينها واختبارها.
تعليم الدرس كمكتمل اختياري ويمكنك التراجع عنه في أي وقت. يبقى تقدمك محفوظًا في هذا المتصفح.