在终端中使用ctrl+c可以强制终止运行的程序,但有时需要在终止时作一些处理(如ros::shotdown,free等),可使用信号函数作退出处理

头文件

#include"csignal"

信号处理函数

void signalHandler(int signum)
{ROS_INFO("%s is received, Terminating the node...",strsignal(signum));ros::shutdown();exit(signum);
}

使用

  ros::init(argc,argv,"camera_Info_publisher");ros::NodeHandle nh;ROS_INFO("camInfo_pub node is running..."); signal(SIGINT,signalHandler);

ROS 使用signal 终止 Node相关推荐

  1. ROS的学习(六)理解ROS的节点(NODE)

    经过前面的学习,我们已经知道了如何构建一个ROS的包,这篇博客将介绍ROS中的节点的概念. 在继续之前,请按ctrl+alt+t打开一个终端,在里面输入: sudo apt-get install r ...

  2. EAI ydlidar X4 ROS无法获取建立node,官方程序初始化失败

    根据ydlidar_ros内步骤配置完成激光雷达,运行 $ roslaunch ydlidar_ros lidar.launch 激光雷达不转,且报错 ERROR: cannot launch nod ...

  3. ROS修改pkg与node名字

    将pkg_name由answer修改为command_answer 需要修改pkg名称的地方有两处 (1)该pkg的CMakeList文件开头 project(pkg_name) (2)该pkg的xm ...

  4. linux下 如何用信号signal 终止或者暂停子线程,linux下实现线程暂停

    记得在windows下有一个SuspendThread使线程挂起的函数,却发现linux下没有类似的函数,于是想自己写个.. 刚开始就想到用信号(没办法,正在看auep,只能想到这个) test1: ...

  5. ROS ERROR: cannot launch node of type [mbot_teleop/mbot_teleop.py]

    ERROR: cannot launch node of type [mbot_teleop/mbot_teleop.py]: can't locate node [mbot_teleop.py] i ...

  6. ROS总结一,catkin,package,CMakeList,Topic,node

    ROS系统学习已经有几周了,但是感觉学的效率有点低.不过还是要把总结先写了,以尽快进入下一阶段学习. PS:这篇总结主要是根据MOOC网中科院老师的讲义来的. 推荐学习,网址:https://www. ...

  7. ROS修改pkg名和node名教程

    修改pkg名   有的时候最开始起了一个功能包package名,但后来要进行修改.修改package名,需要改两步然后重新catkin_make即可 操作如下:   再回到工作空间执行catkin_m ...

  8. 使用ROS节点——Node Master——roscore、rosrun、rosnode

    1.Node 在ROS的世界里, 最小的进程单元就是节点( node) . 一个软件包里可以有多个可执行文 件, 可执行文件在运行之后就成了一个进程(process), 这个进程在ROS中就叫做节点. ...

  9. node 生产的env文件怎么注入_Node.js进阶之进程与线程

    进程与线程在服务端研发中是一个非常重要的概念,如果您在学习的时候对这一块感到混乱或者不是太理解,可以阅读下本篇内容,本篇在介绍进程和线程的概念之外,列举了很多 Demo 希望能从实战角度帮助您更好的去 ...

最新文章

  1. 成为JavaGC专家(1)—深入浅出Java垃圾回收机制
  2. python编写爬虫的步骤-用Python编写一个简单的爬虫
  3. 文件下载--服务器端编程操作
  4. thread安全性(写的不错)
  5. Oracle 10g Audit(审计) --- 记录登录用户在Oracle中的所有操作(转)
  6. python发邮件详解_python:利用smtplib发送邮件详解
  7. 发年终奖了,送台MacBook Air!
  8. 阿里巴巴港股股价创历史新高 市值超6.1万亿港元
  9. NIST 发布关于使用“行政令-关键软件”的安全措施指南
  10. unity3d从零開始(五):了解摄像机
  11. 正则表达式-入门资料
  12. past软件_Past软件与AndersonDarling正态性检验
  13. 小学计算机网络教室管理制度,计算机网络教室使用管理制度[大全五篇]
  14. Qt中打包程序运行时出现:0xc000007b错误
  15. AutoPatch java_Java Beta.canAutoPatch方法代碼示例
  16. 关于CDN那些名词,你知道吗?
  17. 论文笔记:FILLING THE G AP S: MULTIVARIATE TIME SERIES IMPUTATION BY GRAPH NEURAL NETWORKS
  18. 【VUE】实现自动滚动
  19. 使用软碟通(UltraISO)刻录Linux系统
  20. php中``反引号的作用

热门文章

  1. 音乐分类及处理——用机器学习的方法实现python
  2. Linux内核——任务管理
  3. 深度学习之 人脸识别(2) 模型
  4. 自学基础1_linux_1_man命令详解
  5. 转载:SyncToy安装使用详解
  6. Hibernate 查询Criterion数据
  7. Microsoft Excel 教程「3」:如何在 Excel 中打印工作表?
  8. 为什么一个简单腹泻,服用了附子理中丸后,会绵延十年不愈?(转)
  9. 计算机网络p2p应用,[计算机网络-应用层] P2P应用
  10. Wincc 7.5 SP1使用VBS创建Excel日报表并显示在画面