Lock (java.util.concurrent.locks) — интерфейс для более гибкой блокировки, чем synchronized. Преимущества: tryLock() — попытка без блокировки, tryLock(timeout) — с таймаутом, lockInterruptibly() — можно прервать ожидание, newCondition() — несколько условий ожидания. ReentrantLock — основная реализация, поддерживает fairness (FIFO). Минус: нужно вручную вызывать unlock() в finally, иначе deadlock. Для простых случаев synchronized проще и достаточен.
Что такое Lock и чем он лучше synchronized?
Middle
313 просмотровAFK Offer AI
Что такое Java Flight Recorder и как его использовать?