我从http://social.msdn.microsoft.com/Forums/en/roboticsdss/thread/3169a539-f536-4b9d-bae7-01212a857660看到并且从我自己使用和调试 DSS 服务的经验来看,DSS 使用克隆进行节点内通信,使用克隆+序列化进行节点间通信。我请求你帮助理解这个机制。对于节点内通信,我知道 DSS 仅使用克隆,因为我们在同一进程空间中传输对象(不需要通过网络进行通信),并且我们不希望任何不需要的共享内存依赖项。但是,在节点间通信的过程中,为什么需要克隆+序列化呢?从我对序列化的理解来看,当你序列化一个对象时,你在序列化结束时得到的输出是完全独立于被序列化的对象的,可以单独使用来构造一个新的对象。此外,在序列化过程中,我不认为我们要更新原始对象,我们只是要从中读取。在这种情况下,单靠序列化是不够的吗?为什么我们需要在序列化之前进行克隆?
谢谢,
文卡特