【发布时间】:2017-03-03 13:24:35
【问题描述】:
我完全理解 ROS 可能会丢失前几条消息,因为发布者订阅者尚未成功连接。
但是有没有保证发布者发送的所有消息都会成功传递给所有订阅者(如果消息队列不溢出)?
【问题讨论】:
-
顺便说一句,你也可以在 ROS Answers 上提问 ROS 相关问题:answers.ros.org/questions。
我完全理解 ROS 可能会丢失前几条消息,因为发布者订阅者尚未成功连接。
但是有没有保证发布者发送的所有消息都会成功传递给所有订阅者(如果消息队列不溢出)?
【问题讨论】:
假设发布者在订阅者之前成功初始化,并且消息队列没有溢出,那么 ROS 消息传递的保证本质上与 TCP 相同,因为这是发布者和订阅者使用的底层传输协议。正如Wikipedia 所说,TCP 是一种可靠的传输机制,但如果 Internet 连接中断并且包超时,您的消息仍有可能丢失。
【讨论】: