squirrel
squirrel copied to clipboard
parallel fire event, get exception: The state machine is already terminated.
在项目中并发调用fsm.fire(event), 可能其他线程触发了final event,当前线程再触发事件就会得到这个异常The state machine is already terminated.
并发状态下难以保证调用fire的时候状态机不是terminated状态,怎么处理这样的问题?增加一个terminated callback?
去看了一下spring statemachine,触发事件sendEvent是返回true or false的,我觉得fsm.fire(event)也应该增加返回值,而不是直接抛出异常