Akka和获得Singleton对象的ActorRef



为Singleton Actor 获取ActorRef的(最佳(方法是什么

这是我使用的代码:

ActorRef instance = system.actorOf(Props.create(ContactServer.class, encoding, this));
instance.tell(new AbstractMap.SimpleImmutableEntry<>(device, actionJson), ActorRef.noSender());

我遇到的问题是《演员》永远不会结束,所以我最终遇到了很多演员:

akka://application/user/$e
akka://application/user/$f
akka://application/user/$g
akka://application/user/$h
akka://application/user/$i

然而,虽然我可以用";getContext((.stop(getSelf(((",将其用作Singleton似乎更有意义,因为Actor中没有保存状态。但是,如果不一直创造新的演员,我该如何获得这位演员的推荐呢?

要获得现有参与者的引用,您可以:

  1. 通过具体路径查找演员,请参阅https://doc.akka.io/docs/akka/2.5/general/addressing.html#looking-通过具体的路径提升演员
  2. 在actor系统中初始化ActorRef之后,只需简单地传递它

在我目前正在开发的系统中,第二种方法工作得很好,因为它很简单。

最新更新