exit VS _exit
一个进程退出有三种场景:a.代码运行完毕,结果正确;b.代码运行完毕,结果不正确;c.代码异常终止。我们进程的退出的方法也分为两大类:正常终止和异常终止。 其中 进程正常终止的方法又分为:a.return返回;b.exit();c._exit()。进程异常终止就是收到终止信号。
今天带大家来学习两个函数,就是完成进程正常退出的两个函数,exit和_exit。本篇博客是通过实际代码一步一步推出结论,大家不可只读文字,需要结合图片中的代码一同观看。
exit()
1、查看exit()函数的使用手册
查看手册我们知道,exit()函数就是完成进程的终止工作的,它包含的头文件和函数的参数如图中所示,exit()函数的返回值为void类型,形参是一个int类型的status,就是返回值,该进程结束,我们返回值是供父进程wait/waitpid的,父进程来获取我们当前进程的状态信息。
2、代码示例exit()
我们实际代码来观察exit函数,小编之前的文章提过echo $?。这个命令是用来获取最近一次进程的退出码信息,如果退出码为0,代表进程正常退出;退出码非0代表进程异常退出,异常退出就表示进程收到了信号,这里了解即可,而非0又有多种,不同的数字代表不同的错误信息。echo $?示例如图:
了解了这些