itemisCREATE / statecharts

YAKINDU Statechart Tools (http://www.statecharts.org)
Eclipse Public License 1.0
175 stars 85 forks source link

Deadlock using @SuperStep with inEventQueue test #3071

Closed rherrmannr closed 4 years ago

rherrmannr commented 4 years ago
  1. open inEventQueue.sct
  2. add @SuperStep
  3. raise event f at least once
  4. raise event e -> Deadlock
tkutz commented 4 years ago

There is a cycle in the statechart, so the interpreter runs forever, because in superstep semantic the event e is not cleared directly: Bildschirmfoto 2020-05-13 um 11 48 44

Cycle detection is hard as we could also have guard expressions involved, like this one in state L: Bildschirmfoto 2020-05-13 um 11 49 46

But at least we should make the simulation cancelable, and not run in the UI thread directly.