Встречается на собеседованиях • сегодня

Какие знаешь виды Lock

В Java есть несколько видов Lock из пакета java.util.concurrent.locks:

  1. ReentrantLock – базовый lock с возможностью повторного входа (один поток может захватить его несколько раз).
    java
    Lock lock = new ReentrantLock();
    lock.lock();
    try {
        // критическая секция
    } finally {
        lock.unlock();
    }
  1. ReentrantReadWriteLock – разделяет lock на чтение (ReadLock) и запись (WriteLock), повышая производительность при частых чтениях.

  2. StampedLock – оптимизированная альтернатива ReadWriteLock с поддержкой оптимистичных блокировок.

  3. Condition – не отдельный lock, а механизм ожидания/сигнализации, связанный с Lock (аналог wait()/notify() для synchronized).

  4. LockSupport – низкоуровневый механизм для блокировки/разблокировки потоков (используется в AQS).

Каждый тип выбирается в зависимости от сценария (конкуренция, read/write нагрузка и т.д.).

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы