Редактировал(а) Alexandr Fokin 2026/05/07 14:23

От версии 1.8
отредактировано Alexandr Fokin
на 2026/05/05 17:24
Изменить комментарий: К данной версии нет комментариев
К версии 1.1
отредактировано Alexandr Fokin
на 2026/05/05 15:36
Изменить комментарий: К данной версии нет комментариев

Сводка

Подробности

Свойства страницы
Содержимое
... ... @@ -2,10 +2,9 @@
2 2  |Описание колонок|(((
3 3  |(% style="width:232px" %) |(% style="width:1151px" %)
4 4  |(% style="width:232px" %)Триггер|(% style="width:1151px" %)Используется ли триггер
5 -|(% style="width:232px" %)Избыточная задержка сигнала|(% style="width:1151px" %)Свойство обозначающее, что процесс может получить сигнал (и продолжить обработку) позже чем мог бы (при использовании других подходов).
5 +|(% style="width:232px" %)Избытоная задержка сигнала|(% style="width:1151px" %)Свойство обозначающее, что процесс может получить сигнал (и продолжить обработку) позже чем мог бы (при использовании других подходов).
6 6  |(% style="width:232px" %)Stream триггер|(% style="width:1151px" %)Триггер, отслеживающий состояние процесса (выполняется он или нет).
7 7  Реализуется через отправку TriggerEvent в момент остановки выполнения процесса (делается автоматически если зарегистрирован).
8 -Пробуждает процесс (передает новый сигнал), только после того как процесс остановил выполнение.
9 9  |(% style="width:232px" %)Wakeup condition|(% style="width:1151px" %)Модуль wakeup condition проверяет условие наличия новых сигналов перед остановкой процесса.
10 10  От разработчика требуется реализация хендлера проверки условия.
11 11  |(% style="width:232px" %)Wakeup state|(% style="width:1151px" %)(((
... ... @@ -20,17 +20,16 @@
20 20  )))
21 21  )))
22 22  |Типы передачи сигналов|(((
23 -| |(% style="width:662px" %)Тип|(% style="width:513px" %)Пример|Триггер|Избыточная задержка сигнала|Stream триггер|Wakeup condition|Wakeup state
22 +| |(% style="width:662px" %)Тип|(% style="width:513px" %)Пример|Триггер|Избытоная задержка сигнала|Stream триггер|Wakeup condition|Wakeup state
24 24  |1|(% style="width:662px" %)Если внешний сигнал единичный и процесс гарантировано остановлен, то его можно подать сразу на процесс (без триггера).|(% style="width:513px" %)(((
25 25  Линейный процесс отправил запрос и ждет 1 событие ответ.
26 -Хендлер события пробуждает процесс напрямую.
27 27  )))|-|-|-|-|-
28 28  |2|(% style="width:662px" %)Если внешний сигнал множественный или процесс может периодически запускаться, то сигнал нужно подавать через триггер.|(% style="width:513px" %) | | | | |
29 -|2.1|(% style="width:662px" %)Несколько конкурирующих триггеров с cannot hold lock timeout.
30 -Если не удалось получить блокировку процесса, то выполнение триггера откладывается на некоторый timeout.|(% style="width:513px" %) |+|+|-|-|-
31 -|2.2|(% style="width:662px" %)Если используется один stream триггер, то можно обойтись без таблицы wakeup state entity.|(% style="width:513px" %)Transactional outbox. См [[Примеры>>doc:Проекты и репозитории.Библиотеки.Движок cccc1808\. ProcessEngine.Примеры.WebHome]] 3.|+|-|+|+-|-
32 -|2.3|(% style="width:662px" %)Несколько конкурирующих триггеров.|(% style="width:513px" %) |+|-|-|+|+
33 -|3|(% style="width:662px" %)Периодическая проверка|(% style="width:513px" %)Процесс пробуждается каждые N timeout, используется только 1 timer trigger. См. [[Примеры>>doc:Проекты и репозитории.Библиотеки.Движок cccc1808\. ProcessEngine.Примеры.WebHome]] 1 (блок 2).|+|+|-|-|-
27 +|2.1|(% style="width:662px" %)Если не удалось получить блокировку процесса, то выполнение триггера откладывается на некоторый timeout.|(% style="width:513px" %) |+|+|-|-|-
28 +|2.2|(% style="width:662px" %)Если используется один stream триггер, то можно обойтись без таблицы wakeup state entity.|(% style="width:513px" %)Transactional outbox.|+| |+|+-|
29 +|2.3|(% style="width:662px" %)Wakeup condition + Wakeup state|(% style="width:513px" %) |+|-|-|+|+
30 +
31 +
34 34  )))
35 35  | |
36 36