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