【发布时间】:2015-11-14 20:38:22
【问题描述】:
我是 Akka 的新手,我正在努力解决 SupervisorStrategies 和儿童演员终止的问题。我有几个非常相似的担忧。
首先,我的理解是如果一个actor创建另一个actor(通过context.actorOf(...)),那么它自动成为创建actor的父/主管。这是唯一一个演员可以成为另一个演员的父母/主管的方式。
如果我上面说的有什么不正确的地方,请先纠正我!但是,假设我或多或少地步入正轨,那么当多个父 Actor 创建同一个子 Actor 的实例时会发生什么:
// Groovy pseudo-code.
class Fizz extends UntypedActor {
@Override
void onReceive(Object message) {
ActorRef buzz = context.system.actorOf(Props.create(Buzz), "buzz")
buzz.tell("Hello buzz!", self)
}
}
class Foo extends UntypedActor {
@Override
void onReceive(Object message) {
ActorRef buzz = context.system.actorOf(Props.create(Buzz), "buzz")
buzz.tell("Meh!", self)
}
}
在上面的例子中,Fizz 和 Foo 的父母是同一个 Buzz 演员实例,还是两个 Buzz 的实例?如果是多个实例,我可以假设终止一个实例只会终止该实例吗?或者如果Foo 终止/停止其Buzz 实例,那是否也会终止/停止Fizz 的实例?
【问题讨论】:
标签: akka akka-supervision akka-actor