远程角色被杀死时,akka FSM计时器不会触发

时间:2018-11-06 13:39:55

标签: scala akka akka-fsm

我的FSM正在向远程参与者发送消息,并在收到答复时进行转换。 FSM状态配置有可以正常工作的超时(即使没有收到来自远程参与者的响应,超时也会按预期触发并导致“超时”过渡),但是由于某种原因,如果目标参与者死亡,则FSM超时将不开火。

我的FSM如下:

onTransition {
   case A -> B ...
   case B -> C ...
   ...
}

onTermination {
    case StopEvent(FSM.Normal, state, _) => ...
    case StopEvent(FSM.Failure(_, _, _) => ...
  }

  when(A, stateTimeout = timeout) {
    ....  
  }
  ...
  whenUnhandled {
    case Event(StateTimeout, _) => NOT CALLED IF THE REMOTE ACTOR DISCONNECTS
  }

0 个答案:

没有答案