Жизненный цикл процесса

Как только процесс создан и сконфигурирован, он может выполняться как действие или функция. При запуске как интерактивное действие процесс запустится в интерактивном режиме. Если же процесс запущен как функция или действие в неинтерактивном режиме, то процесс запустится в неинтерактивном режиме.

При запуске процесс проходит определенный цикл:

  • При повторном запуске, останавливается предыдущий процесс, если он был запущен. При многопользовательском режиме перезапускается только процесс текущего пользователя. Процессы остальных пользователей продолжат работать в старой конфигурации.
  • Процесс инициализирует входные блоки, чтобы события и изменения вызывали обработку задач процесса.

Задача процесса

Задача - это множество соединенных между собой блоков. Каждая задача должна начинаться с входного блока. При каждой активации входного блока создается задача на обработку в отдельном потоке, где точкой входа служит сам входной блок, т.е. выполнение задачи начнется со следующего блока, который соединен с входным блоком. Настроить количество одновременных задач можно в свойствах процесса.

Пример:

При активации входных блоков, которые выделены зеленым цветом, будет выполнятся задача, выделенная зеленым цветом.

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

При активации входного блока, который выделены синим цветом, будет выполнятся задача, выделенная синим цветом.  

Нормальное функционирование процесса

Как только заканчивается первичный запуск, процесс переключается в ждущий режим. Его последующие действия:

  • Входной блок Startup сразу после первичного запуска, добавляет задачу на обработку.
  • Входной блок Timer обрабатывается согласно графику, заставляя процесс обрабатывать соответствующие задачи.
  • Входной блок Event согласно активатору также вызывают обработку определенных задач процесса.