К статье
Практический материал

Администрирование · 10 мин

Как в 1С остановить процесс: сеансы, фоновые и регламентные задания

Способы остановить процесс в 1С: завершение сеанса пользователя, отмена фонового задания, остановка регламентных операций и службы сервера 1С без потери данных.

Фраза «остановить процесс в 1С» означает разные действия в зависимости от того, что именно зависло или мешает работе. Это может быть сеанс конкретного пользователя, который заблокировал документ, фоновое задание, выполняющееся часами, регламентная операция, запущенная по расписанию, или целиком рабочий процесс сервера 1С, потребляющий всю память. У каждого случая свой безопасный способ остановки, и выбор неправильного метода приводит к обрыву работы десятков пользователей.

Главное правило: сначала определите, какой именно процесс нужно остановить и кого он затронет. Завершение одного сеанса — штатная операция, а убийство процесса rphost через диспетчер задач — аварийная мера, после которой несохранённые данные пользователей теряются, а в файловой базе возможно повреждение таблиц. Ниже разобраны все уровни остановки — от мягкого к жёсткому.

Как определить, какой процесс нужно остановить

Перед остановкой выясните симптомы. Если один пользователь жалуется, что документ «занят другим пользователем», — ищите зависший сеанс. Если база тормозит у всех, а на сервере загружен процесс rphost, — проблема в тяжёлом фоновом задании или утечке памяти рабочего процесса. Если операция вроде обмена данными или закрытия месяца выполняется аномально долго, — речь о конкретном фоновом задании внутри базы.

Полезные источники информации: консоль кластера серверов 1С (список сеансов и соединений), встроенная обработка «Активные пользователи» в типовых конфигурациях, диспетчер задач Windows на сервере (процессы ragent, rmngr, rphost) и журнал регистрации, где видно, какие фоновые задания запущены и завершились ли они с ошибкой.

Документ занятЗависший сеанс пользователя

Кто держит блокировку — в списке активных пользователей

Тормозит вся базаТяжёлый процесс на сервере

Загрузку rphost в диспетчере задач и список фоновых заданий

Операция идёт часамиЗависшее фоновое задание

Состояние задания в консоли заданий и ошибки в журнале регистрации

Сервер не отвечаетПроблема агента или кластера

Состояние службы агента сервера 1С

Завершение сеанса пользователя

Самая частая задача — снять зависший сеанс, который держит блокировку. В клиент-серверном режиме откройте консоль кластера серверов 1С, перейдите в раздел «Сеансы», найдите нужный сеанс по имени пользователя или компьютера и выберите «Удалить» в контекстном меню. Сеанс завершится принудительно: открытые, но не записанные данные пользователя будут потеряны, поэтому при возможности предупредите человека заранее.

В типовых конфигурациях (Бухгалтерия, ERP, Управление торговлей) есть штатный путь: «Администрирование» → «Обслуживание» → «Активные пользователи». Там можно завершить сеанс выбранного пользователя прямо из интерфейса 1С без доступа к консоли кластера. Этот способ удобен, когда у администратора базы нет прав на сервер.

Файловый режим

В файловой базе консоли кластера нет, поэтому зависший сеанс завершают иначе: через «Активные пользователи» внутри базы, а если база недоступна — путём перезапуска зависшего процесса 1cv8.exe на компьютере пользователя. В крайнем случае останавливают общий доступ к файлу базы, но это обрывает работу всех подключённых пользователей.

Как завершить сеанс через консоль кластера
  1. 1
    Откройте консоль кластера серверов 1С и раскройте нужный кластер
  2. 2
    Перейдите в раздел «Сеансы» и найдите сеанс по пользователю или компьютеру
  3. 3
    Убедитесь, что это именно зависший сеанс — сверьте время начала и последнюю активность
  4. 4
    В контекстном меню выберите «Удалить»
  5. 5
    Проверьте, что блокировка снята: попросите пользователя повторить операцию

Отмена фонового задания

Фоновые задания — это процессы, которые 1С выполняет внутри сеанса без интерфейса: обмены, загрузка курсов валют, длительные отчёты, обработки данных. В типовых конфигурациях их список находится в разделе «Администрирование» → «Обслуживание» → «Регламентные и фоновые задания». Задание в состоянии «Выполняется» можно выделить и нажать «Отменить».

Важно понимать ограничение: отмена фонового задания — это запрос на прерывание, а не мгновенное убийство потока. Если код задания не проверяет отмену или застрял на запросе к СУБД, фактическая остановка может занять время. Если задание не отменяется, придётся завершать сеанс, в котором оно выполняется, через консоль кластера — у фоновых заданий в списке сеансов тип «Фоновое задание».

Остановка регламентных заданий и блокировка их запуска

Регламентные задания отличаются от фоновых тем, что запускаются по расписанию автоматически. Отменить текущее выполнение можно так же — через кнопку «Отменить» в консоли заданий. Но если нужно полностью остановить регулярный запуск (например, на время обновления или настройки), откройте свойства регламентного задания и снимите флаг «Использование».

В клиент-серверном режиме есть более грубый рычаг: в свойствах информационной базы в консоли кластера можно установить флаг «Блокировка регламентных заданий включена». Это останавливает запуск всех регламентных заданий базы целиком — полезно при обновлении конфигурации, но опасно забыть снять блокировку после работ: обмены и расчёты молча перестанут выполняться.

Перезапуск службы сервера 1С и рабочих процессов

Когда проблема на уровне сервера — rphost съел всю память, сеансы зависают массово, — действуют на уровне процессов кластера. Мягкий способ: в консоли кластера в разделе «Рабочие процессы» выбрать проблемный rphost и включить для него резервирование или перезапуск, если настроено автоматическое перераспределение. В простых конфигурациях проще перезапустить службу целиком.

Для перезапуска службы откройте «services.msc» на сервере, найдите службу «Агент сервера 1С:Предприятия» и выберите «Перезапустить». Учтите: это оборвёт все сеансы всех баз кластера. Заранее предупредите пользователей, установите блокировку соединений в свойствах базы и дождитесь завершения активной работы.

cmd
net stop "Агент сервера 1С:Предприятия 8.3 (x86-64)" && net start "Агент сервера 1С:Предприятия 8.3 (x86-64)"

Убийство процесса rphost через диспетчер задач — аварийный вариант, когда консоль кластера не отвечает. Кластер обычно запустит новый рабочий процесс автоматически, но все сеансы погибшего rphost завершатся с ошибкой, а незавершённые транзакции откатятся СУБД. В файловых базах такое прерывание во время записи может повредить файл 1Cv8.1CD.

Остановка процесса 1С на компьютере пользователя

Если завис толстый или тонкий клиент на локальной машине (окно не отвечает, процесс 1cv8.exe или 1cv8c.exe грузит процессор), завершите его через диспетчер задач: Ctrl+Shift+Esc → вкладка «Подробности» → найти процесс → «Снять задачу». Незаписанные данные в открытых формах будут потеряны, но сама база при клиент-серверной работе не пострадает — сервер завершит осиротевший сеанс по тайм-ауту.

После аварийного завершения клиента в файловой базе может остаться «фантомный» сеанс, из-за которого база сообщает, что пользователь уже работает. Обычно он снимается сам через несколько минут; если нет — проверьте, не осталось ли процессов 1cv8.exe на других компьютерах, открывающих эту базу.

Типичные ошибки
01
Убивать rphost вместо завершения конкретного сеанса — страдают все пользователи рабочего процесса
02
Отменять фоновое задание во время записи данных — риск несогласованных данных в базе
03
Забывать снять блокировку регламентных заданий после обновления — обмены молча останавливаются
04
Перезапускать службу сервера без предупреждения пользователей — потеря несохранённых данных у всех
05
Завершать сеанс «вслепую», не проверив, что это именно зависший, а не активно работающий пользователь

Проверка результата после остановки

После завершения сеанса убедитесь, что блокировка снята: пользователь, который не мог записать документ, должен успешно повторить операцию. После отмены фонового задания проверьте его состояние в консоли заданий — оно должно смениться с «Выполняется» на отменённое или завершённое с ошибкой, а в журнале регистрации появится соответствующая запись.

После перезапуска службы сервера проверьте, что кластер поднялся (консоль подключается, базы видны), пользователи могут войти, а регламентные задания запускаются по расписанию. Если после убийства rphost база ведёт себя странно, для файлового режима имеет смысл запустить тестирование и исправление через конфигуратор.

Контрольные точки

Как проверить результат

Список сеансов в консоли
Норма

Зависшего сеанса нет, остальные работают

Тревожный признак

Сеанс появился снова или удалены лишние сеансы

Состояние фонового задания
Норма

Задание отменено, новых записей о нём в журнале нет

Тревожный признак

Задание снова «Выполняется» или повисло в отмене

Запуск регламентных заданий
Норма

Задания выполняются по расписанию

Тревожный признак

Блокировка заданий осталась включённой

Доступность базы после перезапуска службы
Норма

Пользователи входят, консоль кластера открывается

Тревожный признак

Служба не стартовала, база недоступна

Частые вопросы

Что будет с данными, если завершить сеанс пользователя принудительно?

Все несохранённые данные в открытых формах будут потеряны. Уже записанные в базу объекты не пострадают: завершение сеанса не откатывает завершённые транзакции. Поэтому перед принудительным удалением сеанса стоит попытаться связаться с пользователем.

Фоновое задание не отменяется кнопкой «Отменить». Что делать?

Отмена — это запрос, и код задания может её игнорировать. Найдите соответствующий сеанс типа «Фоновое задание» в консоли кластера и удалите его. Если и это не помогает, задание, скорее всего, застряло на стороне СУБД — тогда проблему решают на уровне СУБД или перезапуском рабочего процесса.

Можно ли остановить процесс в файловой базе без риска повреждения?

Завершение клиентского процесса 1cv8.exe обычно безопасно, если в этот момент не идёт запись в базу. Риск повреждения файла 1Cv8.1CD возникает при обрыве питания, сети или принудительном убийстве процесса во время записи. Перед жёсткой остановкой убедитесь, что никто не проводит документы и не запускает обработки.

Как временно остановить все регламентные задания перед обновлением?

В консоли кластера откройте свойства информационной базы и установите флаг «Блокировка регламентных заданий включена». После завершения обновления снимите флаг и проверьте в консоли заданий, что нужные задания включены и выполняются.

Чем отличается завершение сеанса от разрыва соединения?

Соединение — это сетевой канал между клиентом и рабочим процессом, сеанс — логическая сессия пользователя в базе. Разрыв соединения без удаления сеанса может оставить «фантомный» сеанс, который продолжит держать блокировки до истечения тайм-аута. Для снятия блокировок удаляйте именно сеанс.

Итог

Что важно запомнить

Останавливайте процесс на минимально необходимом уровне: сначала сеанс или фоновое задание, затем рабочий процесс, и только в крайнем случае — службу сервера целиком. Перед принудительной остановкой проверьте, что именно выполняется, и предупредите пользователей; после — убедитесь, что блокировки сняты, задания включены, а база доступна.