我正在学习ROS,现在我正在使用一个服务器和客户机来做一些例子,我的意思是,当ros阻塞一个服务时,我不太明白
rospy.wait_for_service("add_two_ints")根据文档,它会阻塞,直到名为add_two_ints的服务可用为止。但是,创建一个句柄以调用服务是必要的。
add_two_ints = rospy.ServiceProxy('add_two_ints', AddTwoInts)我的问题是rospy.wait_for_service()会执行n次吗?直到服务完成为止?太感谢了,我对这件事很困惑
发布于 2020-10-23 07:47:57
所以
rospy.wait_for_service("add_two_ints")
检查服务是否可用,并在服务无法到达时阻塞。和
add_two_ints = rospy.ServiceProxy('add_two_ints', AddTwoInts)创建与服务器通信的对象。
如果服务器在rospy.wait_for_service()调用期间可用,则函数将返回,因此将不再进行检查。如果服务器在远程函数执行过程中失败,try catch块必须捕获错误。
https://stackoverflow.com/questions/64494209
复制相似问题