在qt上通过Qthread继承,
调用init
ros::init(argc, argv,"xxx");
ros::start();
ros::NodeHandle node;
ffff = node.subscribe("/xxxx", 1000, functionCallback, this);
在run函数中使用:
ros::Rate loop_rate(1);
while(ros::ok())
{
ros::spinOnce();
loop_rate.sleep();
}
}
那么回调函数functioncallback函数处理是run函数线程,即ros::spinOnce();所处的线程。
本文详细介绍如何在QT环境中利用QThread继承实现ROS节点初始化与运行。通过具体代码示例,展示如何调用ros::init进行初始化,创建ROS节点,并在run函数中使用ros::spinOnce()保持节点运行。此外,解析了回调函数functionCallback的工作原理及其与主线程的关系。
8124

被折叠的 条评论
为什么被折叠?



