ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

@PapaG is not wrong, but I feel that answer misses an important point: the fact that bag_to_pcd uses a fundamentally different way of processing the .bag file.

Pub-sub is typically implemented such that it makes no guarantees about whether you receive a message (there are implementations that do, but ROS 1's is not one of those).

bag_to_pcd does not use pub-sub, it iterates over the messages in the .bag file directly (using the rosbag API, examples here). That is a blocking operation, and that is why no messages are "lost".

@PapaG is not wrong, but I feel that answer misses an important point: the fact that bag_to_pcd uses a fundamentally different way of processing the .bag file.

Pub-sub is typically implemented such that it makes no guarantees about whether you receive a message (there are implementations that do, but ROS 1's is not one of those).

bag_to_pcd does not use pub-sub, it iterates over the messages in the .bag file directly (using the rosbag API, examples here). That is implemented as a blocking operation, and that is why no messages are "lost". "lost": there is simply no way to advance to the next message before the current one has been processed.