【发布时间】:2015-09-10 13:29:49
【问题描述】:
任何具有合理复杂性的状态机都需要在进入状态时执行一些进入操作。例如,UML 状态机图为此目的有一个特殊的操作。不幸的是,我看不到如何在 Akka FSM 中对此类进入操作(或退出操作)进行建模。对转换执行操作(使用下划线输出状态)不起作用,因为进入操作旨在更改状态数据(例如,准备在新状态下操作所需的数据结构)。关于如何在 Akka FSM 中模拟进入/退出动作的任何建议?
【问题讨论】:
-
进入/退出动作是指在actor开始之前或actor停止之后执行的动作?或者你的意思是对状态转换的副作用?我认为你的问题不够干净。
-
状态机术语中的进入动作是进入状态时执行的功能。与 Actor 停止/启动生命周期无关。
-
我明白了。为什么不使用
goto(NewState).using(newData)语法来更改状态数据?