指向同一个actor的两个IActorRef总是相等吗?

时间:2016-06-19 07:30:03

标签: akka.net

假设我有两个IActorRef指向同一个演员但是从不同来源获得:

在本地创建演员期间获得了一个演员参考:

var actorRef1 = system.ActorOf<MyActor>("myActor");

稍后将此actor引用传递给远程actor,并在返回相同的actor引用之后(例如,作为actorRef2)。

两个参与者参考测试是否相等?

Object.Equals(actorRef1, actorRef2); // true???

或者另一种情况:从不同的远程系统收到两个IActorRef,并指向另一个远程系统上的同一个actor。

1 个答案:

答案 0 :(得分:2)

这个问题是通过gitter聊天回答的。但是在这里发布的也不仅仅是后人。

IActorRef是等同的,它们通过其actorpath和UID进行比较。因此,即使通过不同方式获得2个actorrefs,如果它们指向同一个角色,它们仍然是相等的。