Tags and keywords
In the example, the Transition from (out of) the state
Next will always, automatically, be taken as soon as the 'entry' and 'doActivity' complete. So
PassThrough does not act like a State in a purist StateMachine.
By comparison, the Transition for the Signal
Valid will only be taken if it is invoked during the 'doActivity'. And it will have no chance at all once the 'doActivity' finishes:
The takeaway is that it's best to always use explicit events, triggers, or guards on all Transitions.
For a discussion and simulation of this case in Cameo Simulation Toolkit® please visit also this video page:
ASIDE: If you try to fire
Validduring the 'entry' Activity with a timer in Cameo Simulation Toolkit® (19SP3) it crashes:
Thanks to Prof. Bran Selić of Monash University and ACM for input and discussion.