为了账号安全,请及时绑定邮箱和手机立即绑定

【学习打卡】第8天 C气象数据中心 第二章 2-15节 守护进程的的开发

标签:
C C++


课程名称:C/C++气象数据中心实战,手把手教你做工业级项目


课程章节:2-15,2-16 守护进程的的开发


主讲老师: 吴从周



课程内容:

  1. 讲述守护进程的作用和代码实现流程

  2. 通过实例演示纂写代码,综合信号量和进程的心跳机制,进一步掌握守护进程的相关运用,




课程收获:

  1. 守护进程主要通过检测共享内存中所有服务程序的心跳信息,判断该服务程序是否超时,超时时选择将服务程序进行短时间内的重启操作。通过过与程序调度模块结合,进行保证服务程序永远不停机。


  2.  其中,在服务程序重启过程中,分为将该服务程序退出和调用程序调度模块启动他,而守护进程的作用就是第一个,再程序超时时终止它。在终止流程中,会使用到析构函数和exit()函数,要注意 exit函数不会调用 局部变量的析构函数的,所以我们需要把包含析构函数的变量设置为全局变量,因为exit函数会调用 全局变量 的析构函数。其次,return会调用局部或者全局变量 的析构函数。


  3. 守护进程的很多内容与心跳机制 的相关代码类似,我们可以节约开发时间,在实际开发中很多时候的关键是复制,节约时间

     

  4. kill函数 他的返回值是当进程存在时,返回0,不存在时返回-1. 他有两个参数分别时进程的id和发生的信号值 ,作用主要用于给进程发送终止信号,

  5. 在实际开发中,我们需要加上保护措施,代码不一定完全按照你的想法去运行,而且一旦出错整体查找就会很麻烦。所以我们需要自己给自己安上保险,在判断的时候事先想到这行代码会不会由于不同的原因无法执行,我们需要加上出错保护机制,例如出错时在日志中增加某某代码运行失败,或者想到出错之后 写好系统怎么运行的代码,在kill函数之后,万一未终止程序,可以再次调用9信号强制终止程序。


  6. 稳定是程序员需要摆在第一位的重要问题。













https://img1.sycdn.imooc.com//62f3a7b9000151e217760868.jpg





https://img1.sycdn.imooc.com//62f3a06c0001585907820429.jpg


https://img1.sycdn.imooc.com//62f302010001139817230927.jpg

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消