gpt4 book ai didi

c# - akka.net 有没有办法获取或创建 Actor

转载 作者:太空狗 更新时间:2023-10-30 00:18:17 27 4
gpt4 key购买 nike

对于我的 actor 层次结构,在我通过几个 actor 处理数据之前,我不知道我需要的所有 actor,因此我正在寻找一种方法来返回现有的 ActorRef 或创建一个新的 Action 。这就是我希望下面的代码在“my-id-1”中不存在的情况下创建一个 Actor 或返回已经存在的 Actor 。

Context.ActorOf(MyActor.Props(message), "my-id-1");

如果 Actor 已经存在,以上代码将(如文档所示)抛出 InvalidActorNameException。我如何在 Akka.net 中完成此操作?

最佳答案

您可以使用 Context.Child(actorName) 方法检查当前 actor 是否具有提供的名称的 child 。如果存在,它将返回目标 actor 的 actor ref,如果没有这样的 actor,它将返回 ActorRefs.Nobody

您的代码可能如下所示:

var child = Context.Child(actorName);
if (Equals(child, ActorRefs.Nobody))
child = Context.ActorOf(MyActor.Props(message), actorName);

关于c# - akka.net 有没有办法获取或创建 Actor ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39905090/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com