akka:询问守护演员的孩子们

时间:2015-12-16 17:07:03

标签: scala akka

在actor系统层次结构中,documentation表示存在地址为/user的监护人actor,而使用system.actorOf()创建的actor是该actor的子级。

是否可以查询演员系统以获取守护演员的“当前”子级?如果是这样,这是如何实现的?

1 个答案:

答案 0 :(得分:4)

您可以对符合该选择的所有actor使用通配符actor选择和特殊Identify消息。要查找演员/user直接子项,请执行以下操作:

system.actorSelection("/user/*") ! Identify(None)

如果要在层次结构中找到所有子项,则必须通过为每个actorSelection接收创建子通配符ActorRef来手动下降树。

所有这一点的警告是,这种识别是异步的,你无法知道所有孩子何时识别出自己。您可以做的最好的事情是设定一个时间限制,之后您假设所有孩子都向您报告过。