Does a boundary 'receive signal' interrupt the execution of a task?

Hi there!

I wonder, when the registration for a signal ist executed. To be more detailed: Is it possible, that a boundary event interupts the execution of the task itself?

The task processes a webservice-call, which may take some time up to a timeout of one minute.
The task has a retry of x times y minutes, because an error occurs, if data is locked.
My idea is to reduce x and y by signalling a possible ‘unlock’, but I dont’ want to interrupt the actual webservice-call under any circumstances (I just want to interrupt the wainting for a retry ;-)).

It depends on how you’re executing the task.
If its implemented as an external task then the task itself will be canceled and the process will move on, the external task will find out when it finishes processing and tries to complete the task.

If it’s implemented as a local java class, it won’t interrupt the execution at all. If a thread is running on the engine a BPMN symbol will never interrupt it. Interrupting events are only evaluated after a thread has been completed and the state committed or if the thread has finished executing a path.

It’s not one of that ‘modern’ external tasks :smiley.
So this solution is exact what I need.

Thank you!

1 Like