Область применения: управляемое приложение, мобильное приложение, обычное приложение.
Следует выполнять запись константы вне транзакций, т.к. ее запись может стать «узким» местом при конкурентой работе.
Например, неправильно:
// Увеличиваем счетчик проведенных документов в константе
Процедура ОбработкаПроведения(Отказ, РежимПроведения)
ТекущееЗначение = Константы.СчетчикПроведенныхДокументов.Получить();
Константы.СчетчикПроведенныхДокументов.Установить(ТекущееЗначение + 1);
КонецПроцедуры
На время записи значения в константу, работа других сеансов приостанавливается, если в это же время они выполняют запись этой же константы. Подробнее о причинах избыточных блокировок и методах оптимизации см. базу знаний «Технологические вопросы крупных внедрений».
Вместе с тем, недопустимо решать проблему блокировок констант другими методами, в частности, тотальным кешированием констант в параметрах сеанса или в функциях общих модулей с повторным использованием возвращаемых значений.