- В этой теме 1 ответ, 2 участника, последнее обновление 3 дня, 11 часов назад сделано .
Просмотр 1 ветки ответов
Просмотр 1 ветки ответов
- Для ответа в этой теме необходимо авторизоваться.
Программирование и администрирование в 1С
База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Что если в двух сеансах запустить одну обработку с глобальной серверной переменн
если пользователь в двух сеансах запустит одну и туже внешнюю обработку, где объявлена глобальная серверная переменная, что произойдет?
Если пользователь в двух сеансах запустит одну и ту же внешнюю обработку, где объявлена глобальная серверная переменная, то для каждого сеанса будет своя отдельная копия этой переменной.
Объяснение:
— Глобальные переменные в серверных модулях (в том числе в общих модулях, которые выполняются на сервере) существуют в контексте сеанса пользователя.
— Каждый сеанс пользователя — это отдельный контекст выполнения, у которого свои собственные значения глобальных переменных.
— Следовательно, если один и тот же пользователь откроет два сеанса и запустит обработку с глобальной серверной переменной, то изменения в этой переменной в одном сеансе не повлияют на значение переменной в другом сеансе.
— Глобальная серверная переменная не является общей для всех сеансов и пользователей, она локальна для конкретного сеанса.
Если же нужно иметь общие данные между сеансами, то для этого используют другие механизмы: базу данных, временное хранилище, кэширование на сервере с использованием внешних сервисов, HTTP-сервисов с повторным использованием сеансов и т.п. (см. https://infostart.ru/1c/articles/844632/).