Scala Akka故障消息是如何工作的?

Scala Akka故障消息是如何工作的?,scala,akka,Scala,Akka,我使用Failure消息让发送者知道出了问题。使用sender()回复发件人!失败(新的RuntimeException()) 它是否会在参与者或发送者端抛出异常(或者两者都不会) 有(至少)两个Failure类,scala.util.Failure是scalaTryAPI中的一种类型,它类似于一个替代ADT,用于执行类似于Try catch的操作。您可以在 另一个是akka.actor.Status的一部分,它是一个类似的ADT,但更简单的API,用值表示成功,用异常表示失败。它在Akka内部

我使用
Failure
消息让发送者知道出了问题。使用
sender()回复发件人!失败(新的RuntimeException())

它是否会在参与者或发送者端抛出异常(或者两者都不会)

有(至少)两个
Failure
类,
scala.util.Failure
是scala
Try
API中的一种类型,它类似于一个替代ADT,用于执行类似于
Try catch
的操作。您可以在

另一个是
akka.actor.Status
的一部分,它是一个类似的ADT,但更简单的API,用值表示成功,用异常表示失败。它在Akka内部使用,但也被一些公共API使用,例如
管道
模式,它将未来的结果作为消息发送给
ActorRef
()

发送和接收
Failure
时,不会自动执行任何特殊操作,因此在接收方,您必须匹配
Failure
,才能在您的actor中接受此类消息

由于可以组合接收块,您可以自己定义可重用的
故障处理
,并与参与者的常规接收块相结合