SobesLab логотип SobesLab

Ответ

Это классический подход, когда система "на всякий случай" сразу блокирует данные, к которым обращается транзакция, чтобы другие не смогли их изменить, пока транзакция не завершится. Например, при чтении строчки под Shared-lock другие могут читать, но не менять, а при намерении изменить – ставится Exclusive-lock и никто не может ни читать (в некоторых режимах), ни писать эту строку до конца транзакции. Пессимистичная блокировка полезна, когда велика вероятность конфликтов – она предотвращает параллельное изменение одних и тех же данных, но может вызывать больше ожиданий и блокировок.