ROS编程: 一些Tips
接触了快一年的ROS, 这段时间个人而言, 似乎完全没在日常的编程中对线程/IPC有所考虑. 这说明ROS是一个很易用的框架, 在编程上了屏蔽了很多系统知识, 可以更加专注于逻辑/算法等. 但是从程序员的角度, 其实还是蛮不安的, 需要了解其背后的机制. 1. 背景 ROS就不再介绍了, 网上有非常多的文档, 我们主要关注下ROS内部的一些行为. 下图是我之前画的ROS内部线程视角的时序图, 看看能不能帮助理解: 一个ROS节点起来后, 主要是有5个线程: main main函数运行的线程 pollmanager io运行的线程, 主要是收发topic, 然后把数据queue后待callback消费 xmlrpcmanager 处理service连接的线程 internalcallbackqueue 调用内部callback的线程 roso
