首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何捕捉参与者内部抛出的异常?

如何捕捉参与者内部抛出的异常?
EN

Stack Overflow用户
提问于 2015-10-07 12:50:48
回答 1查看 1.8K关注 0票数 0

在我的参与者中,这些方法可能会抛出异常:

代码语言:javascript
复制
class ServerActor extends Actor {
  override def receive: Receive = {
    case "Start" =>
      println("### actor started")
      throw new Exception("My exception when starting")
    case msg =>
      println("### actor get other message: " + msg)
      throw new Exception("another exception for other messages: " + msg)
  }
}

有没有办法在一个地方处理所有的异常?我希望将它们放在一起处理,例如记录它们

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-09 17:39:04

你可以试着在家长的监督策略下做到这一点:http://doc.akka.io/docs/akka/snapshot/scala/fault-tolerance.html

或者你在actor上有这样的方法:

def preRestart(reason: Throwable, message: Option[Any]): Unit

其中,原因是导致执行元崩溃的异常。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32984015

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档