====== Будьте осторожны с развилками по событиям ====== {{tag>развилка параллельная_развилка развилка_по_событиям}} Развилка по событиям немедленно прерывает ожидание всех событий при наступлении любого из них. Если необходимо реализовать более гибкую бизнес-логику, используйте параллельную развилку и событие-останов. ===== ✔ Как надо ===== Flow_1v91670 Flow_1v91670 Flow_1bmuvfd Flow_1omf6ox Flow_1x386gx Flow_0tjh6sh Flow_0vj1spf Flow_1fpmuu7 Flow_1omf6ox Flow_0tjh6sh Flow_0vj1spf Flow_0v7giyt Flow_0v7giyt Flow_0xssdyb Flow_1fpmuu7 Flow_0xssdyb Flow_1bmuvfd Flow_1x386gx ===== ✘ Как НЕ надо ===== Flow_0opoyid Flow_1tv5ius Flow_11x2rmj Flow_1j4cmln Flow_1elj1ik Flow_11x2rmj Flow_0opoyid Flow_104xfj6 Flow_1tv5ius Flow_06rckk1 Flow_06rckk1 Flow_0eyb0h5 Flow_083x67t Flow_1j4cmln Flow_0eyb0h5 Flow_104xfj6 Flow_083x67t Flow_1elj1ik ===== Примечания ===== Обратите внимание на разницу между диаграммами: если процесс "[[#как_надо]]" ожидает прихода сообщения постоянно, то процесс "[[#как_не_надо]]" прекращает ожидание, когда срабатывает таймер. В этой схеме, если сообщение приходит во время выяснения причины задержки, оно не будет обработано и в результате процесс зависнет после возврата к развилке по событиям. ===== Смотри также ===== * [[ru:rule:control_branch]] ===== Автор(ы) ===== --- //[[user:bell|Anatoly Belaychuk]] 2024-01-08 11:45//