Управляемые блокировки
Вопрос
Объясните, как устроены управляемые блокировки и когда их нужно ставить вручную.
Попробуйте сами
Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.
Показать ответ и разбор
Коротко
Что должно прозвучать в ответе
Блокировки ставит сервер 1С по пространству и значениям полей
Исключительные и разделяемые, живут до конца транзакции
Платформа сама блокирует при записи
Вручную при схеме «прочитать, проверить, записать»
Блокировать только нужное и как можно раньше в транзакции
Что могут спросить следом
- Чем опасна блокировка всей таблицы?
- Что такое взаимоблокировка и как её избегать?
Разбор
Управляемые блокировки ставит менеджер блокировок сервера 1С. Блокируется пространство, например регистр ТоварыНаСкладах, и значения полей: склад и конкретные товары. Блокировки бывают исключительные и разделяемые и держатся до конца транзакции. При записи платформа сама ставит исключительную блокировку на записываемые данные. Вручную блокирую, когда сначала читаю данные, а затем на их основе пишу: например, проверяю остаток и списываю. Тогда сразу ставлю исключительную блокировку через БлокировкаДанных, заполняя значения из табличной части. Блокирую только нужные значения, а не всю таблицу, и делаю это в начале транзакции, чтобы не получить взаимоблокировку.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.
Предыдущий вопрос
Разбор жалоб на ожидание блокировок
Следующий вопрос
Управляемая блокировка по табличной части