在ROS中,节点列表如下
rosnode list
在ROS中,查杀节点如下
rosnode kill node_name
当我在特定节点上执行kill子命令时,节点列表正在正确更新,并且该节点正在关闭。
但我不知道某些进程在关闭后终止于终端的原因,如下所示
我需要再次按 ctrl + c 或 ctrl + z 才能在终端上真正关闭它们。
为什么即使节点关闭,进程(在终端上)也没有终止?
答案 0 :(得分:1)
您所看到的是该节点是否已关闭请求并且实际上并未停止但尝试停止。
rosnode kill something
向NodeHandle发送SIGINT
的内容以及应该做什么节点解构其类和免费NodeHandle(在正确编写的代码中)
我认为在您的特定节点中发生了什么SIGINT处理程序更改或您的NodeHandle无法销毁所有与您的roscpp Lib链接的对象并且需要您按CTRL + C以允许升级到更积极的终结
我所能做的就是在没有看到代码的情况下帮助你:
如果您仍有问题尝试重写SIGINT信号这里是ROS-Wiki的链接,其中包含您的问题的良好信息