Перейти к содержанию

Использование синхронных методов в транзакции

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

Чем дольше выполняется транзакция, тем большее время будут заняты ресурсы сервера 1С:Предприятия и СУБД. Как правило длинные транзакции занимают следующие ресурсы:

  • в ходе выполнения транзакции все изменения в базе данных записываются в журнал транзакций, что необходимо для возможности откатить транзакцию;
  • блокировки, установленные в транзакции, остаются до конца транзакции;
  • на сервере 1С:Предприятия блокировки занимают оперативную память;
  • другие ресурсы, необходимые самой бизнес-логике, которая выполняется в транзакции.

См. также

Экранирование кода

// sonar:SynchronousMethodsInTransaction:off
// sonar:SynchronousMethodsInTransaction:on