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

Что такое пессимистическая блокировка

Пессимистическая блокировка — это механизм управления доступом к данным, при котором предполагается, что конфликты при одновременном доступе вероятны. Суть: поток, получивший блокировку, монопольно владеет ресурсом до завершения операции, другие потоки ждут освобождения.

Пример в Java с ReentrantLock:

java
Lock lock = new ReentrantLock();
lock.lock(); // Блокируем доступ
try {
    // Критическая секция
} finally {
    lock.unlock(); // Обязательно в finally!
}

В SQL (на примере SELECT FOR UPDATE):

sql
SELECT * FROM accounts WHERE id = 1 FOR UPDATE; -- Блокировка строки

Плюсы:

  • Гарантирует целостность данных
  • Простота реализации

Минусы:

  • Снижение производительности из-за ожидания
  • Риск взаимоблокировок (deadlock)
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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