【发布时间】:2013-07-04 07:49:58
【问题描述】:
我正在学习如何使用 Akka 演员,我在 Akka 文档 here 中找到了这个关于容错的示例。
class Parent extends Actor with ActorLogging {
override val supervisorStrategy =
OneForOneStrategy(maxNrOfRetries = 10, withinTimeRange = 1 minute) {
case _: ArithmeticException ⇒ Resume
case _: NullPointerException ⇒ Restart
case _: IllegalArgumentException ⇒ Stop
case _: Exception ⇒ Escalate
}
def receive = {
case p: Props ⇒ sender ! context.actorOf(p)
}
}
class Child extends Actor {
var state = 0
def receive = {
case ex: Exception ⇒ throw ex
case x: Int ⇒ state = x
case "get" ⇒ sender ! state
}
}
我正在尝试创建一个测试类来控制父类和子类。这个类应该有一个方法来做初始化部分和另一个方法来向子实例发送消息。
我需要帮助来组织课程。在 Java 中,我会将 ActorSystem、Parent 和 Child 声明为实例变量并在方法中使用它们。但我不确定如何在 Scala 中执行此操作。
谢谢。
【问题讨论】: