SA Шпаргалка

Все ответы в 2 клика

Продвинутый

Что такое Livelock (Динамическая взаимоблокировка)?

В отличие от Deadlock (когда транзакции намертво зависают, ожидая друг друга), при Livelock транзакции не заблокированы, они постоянно меняют свое состояние, пытаясь избежать дедлока, но не могут продвинуться вперед.

Аналогия из жизни: Два человека встречаются в узком коридоре. Оба одновременно делают шаг вправо, чтобы уступить дорогу. Потом оба делают шаг влево. Они постоянно двигаются, но не могут разойтись.

✅ Решение: Внесение случайных задержек (Jitter) перед повторной попыткой захвата ресурса, чтобы рассинхронизировать потоки.

Сложная тема? Разберём на мок-интервьюЗаписаться на менторство →

Ещё вопросы раздела «SQL и БД»

Все вопросы раздела «SQL и БД»