Ответ вслух Middle Транзакции и блокировки спрашивают часто обновлено

Управляемые блокировки

Вопрос

Объясните, как устроены управляемые блокировки и когда их нужно ставить вручную.

Попробуйте сами

Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.

Показать ответ и разбор

Коротко

Управляемые блокировки ставит менеджер блокировок сервера 1С. Блокируется пространство, например регистр ТоварыНаСкладах, и значения полей: склад и конкретные товары.

Что должно прозвучать в ответе

  • Блокировки ставит сервер 1С по пространству и значениям полей

  • Исключительные и разделяемые, живут до конца транзакции

  • Платформа сама блокирует при записи

  • Вручную при схеме «прочитать, проверить, записать»

  • Блокировать только нужное и как можно раньше в транзакции

Что могут спросить следом

  • Чем опасна блокировка всей таблицы?
  • Что такое взаимоблокировка и как её избегать?

Разбор

Управляемые блокировки ставит менеджер блокировок сервера 1С. Блокируется пространство, например регистр ТоварыНаСкладах, и значения полей: склад и конкретные товары. Блокировки бывают исключительные и разделяемые и держатся до конца транзакции. При записи платформа сама ставит исключительную блокировку на записываемые данные. Вручную блокирую, когда сначала читаю данные, а затем на их основе пишу: например, проверяю остаток и списываю. Тогда сразу ставлю исключительную блокировку через БлокировкаДанных, заполняя значения из табличной части. Блокирую только нужные значения, а не всю таблицу, и делаю это в начале транзакции, чтобы не получить взаимоблокировку.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме