常见问题
本章回答了 Spring Statemachine 用户最常提出的问题。
57. 州变更
我怎样才能自动切换到下一个州?
你可以从三种方式中选择:
-
实现一个动作并向状态机发送相应事件 以触发向正确目标状态的转变。
-
在状态内定义一个延迟事件,并在发送事件之前, 发送另一个推迟的事件。这样做会导致下一个 当处理更方便时,适当的状态转移 那个事件。
-
实现无触发转换,自动导致 状态转变到下一个状态,当进入状态时,且其 行动已完成。
58. 扩展状态
我如何在状态机启动时初始化变量?
状态机中的一个重要概念是,实际上什么都不会发生
除非某个触发因素导致状态转变,使得
然后可以发射动作。不过话说回来,Spring Statemachine
当状态机启动时,总是有一个初始转移。跟
在这个初始过渡阶段,你可以运行一个简单的作,在
一个StateContext可以随意处理扩展状态
变量。