Entity.Id已经可以作为entity的唯一识别了,为什么还要设置一个InstanceId呢?两个id的用处有什么区分么?
entity在 addchild的时候用的都是Id,instanceId存在有啥意义呢?
ETBOOK参考ActorLocation.md文档
Scorpio 读了那个文档,但还是不理解,actor location消息用instanceid传递,但是如果unit位置转移了instanceid就会变,还是要Id来重新定位。为什么不直接用id替代呢?
outofcontrol “位置进程(Location Server),Actor对象可以将自己的Entity.Id跟InstanceId作为kv存到位置进程中。发送Actor消息前先去位置进程查询到Actor对象的InstanceId再发送actor消息。”
id用查询你所在的位置,拿到新的InstanceId才能发消息
Scorpio 多谢,之前对instanceId理解的不透,看了文档entity里面对instanceId的说明有点明白了
明白就好了 InstanceId 在实体被回收后是=0的,但Id不会,Id是不会变的。