假设我有一个parent
参与者发送一条消息至其child
角色。Akka - 孩子发生异常后父母如何发送消息
当孩子完成当前消息的处理后,它会通知父母在该消息中将向孩子发送新消息。
为了保持这个循环即使孩子crashs上某个消息,我添加了一个SupervisorStrategy父:
private static SupervisorStrategy strategy =
new OneForOneStrategy(10, Duration.create("1 minute"),
new Function<Throwable, SupervisorStrategy.Directive>() {
@Override
public SupervisorStrategy.Directive apply(Throwable t) {
if (t instanceof NullPointerException) {
return resume();
} else {
return escalate();
}
}
});
的想法是,不管是什么heppens孩子,它会恢复父母将能够发送下一条消息。
但是,父母如何知道错误何时发生,以便发送下一条消息?
家长触发什么事发生在孩子身上?
是否有像我需要重写的“onChileError”方法?
(将一个并欣赏了Java的斯卡拉例子)
感谢。