首页 > 系统服务 > 详细

【Linux应用】exit和_exit的区别

时间:2021-09-06 07:46:07      阅读:28      评论:0      收藏:0      [点我收藏+]

  我们一般使用exit库函数而非_exit系统调用,原因在于exit最终也会调用_exit终止进程,但在此之前,它将会完成一些其它的工作,exit会执行如下动作:

  • 如果程序中注册了进程终止处理函数,那么会调用终止处理函数。
  • 刷新stdio流缓冲区。
  • 执行_exit系统调用。

  由此可知,exit会比_exit多做一些事情,包括执行 终止处理函数、刷新stdio流缓冲区以及调用_exit。在我们的程序当中,父、子进程不应都使用exit终止,只能由一个进程使用exit、而另一个使用_exit退出,当然一般推荐的是子进程使用_exit退出、而父进程则使用exit退出,其原因就在于调用exit函数终止程序会刷新进程的stdio流缓冲区。

【Linux应用】exit和_exit的区别

原文:https://www.cnblogs.com/lc0811/p/15223937.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!