Что такое дедлок и как с ним бороться?

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

Короткий ответ

Что ответить на собеседовании

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

Подробный разбор

Ответ с пояснениями

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

Например, первая транзакция заблокировала A и ждёт B, вторая — B и ждёт A. СУБД обычно обнаруживает такую ситуацию и отменяет одну транзакцию; приложение должно уметь повторить всю операцию, а не отдельный случайный запрос. Диагностируют граф ожиданий и затронутые запросы. Не держите блокировки во время внешнего сетевого вызова. Увеличение таймаута не устраняет цикл ожидания и может только продлить проблему.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее