如果您在 Scala 中使用 actor,您不知道消息是否按照您发送消息的顺序到达,dart 中的隔离是否确保消息按照您发送消息的顺序接收?
最佳答案
有趣的问题。我不记得在规范的任何地方看到过它(但我可能是错的,并且它可能是从规范的其他部分得出的),但一般来说,Dart 中的消息总是被认为是排队,这也意味着它们是有序的。
从虚拟机来看,情况似乎确实如此。实际上,有两个队列——“正常”消息和带外(OOB)消息。 OOB 消息始终优先于普通消息,但它们目前仅用于实现镜像 API,因此不必担心。没有优先级的概念(除了正常/OOB 区别)。一般来说,我认为答案是是,您收到消息的顺序与发送的顺序相同。
Dart 人们时不时地谈论通过网络在隔离之间传递消息(这样一个隔离在一台计算机上运行,另一个隔离在另一台计算机上运行,并且它们透明地进行通信)--一旦实现,再次提出这个问题将很有意义(我希望答案保持不变)。
关于dart - dart 隔离中的消息顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11215178/