Linux进程退出--_exit()&exit()

1.退出场景

  • 正常符合预期退出
  • 正常不符合预期退出(结果不正确)
  • 异常退出:执行过程中异常奔溃, 还未执行完

2.进程常见的退出方法

2.1正常退出

  • main函数返回 ( return )
  • 调用 exit( int status )函数
  • 使用 _exit( int status )系统调用接口

可以使用ench $? 来查看进程退出码

2.2异常退出

  • 向进程发送信号导致进程异常退出(如 Ctrl+c 终止信号)
  • 代码错误导致进程运行时奔溃异常退出

第一种情况是Linux系统中的信号,系统响应某些状况而产生的事件,是进程间通信的一种方式。信号可以由一个进程发送给另外进程,也可以由内核发送给进程。第二种情况是代码错误而导致程序异常,运行崩溃退出。

3.信号处理程序

信号处理程序是进程在接收到信号后,系统对信号的响应。根据具体信号的含义,相应的默认信号处理程序会采取不同的处理方式:

  • 终止进程运行,并且产生core dump (核心转储文件,记录一些错误信息)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值