5 . 进程终止API
5.1 exit()函数和_exit()函数
exit()和_exit()函数都是用来终止进程的。当程序执行exit()和_exit()时,进程会无条件的停止剩下的所有操作。清除各种数据结构,并终止本进程的运行。但是这个两个函数运行还是有点区别的。
5.2 exit()函数和_exit()函数 的区别
5.2.1exit()函数和_exit()函数 的区别 示意图
- _exit()函数的作用最为简单:直接使进程终止运行,清除其使用的内存空间,并销毁其在内核中的各种数据结构;
- exit()函数则在这些基础上作了一些包装,在执行退出之前加了若干道工序。exit()函数在调用exit系统调用之前要检查文件的打开情况,把文件缓冲区中的内容写回文件,就是图中的"清理I/O缓冲"一项。
总结:
- Exit() 函数相当于在_exit上面加了一层封装
- _exit() 结束程序不清理缓冲区。
5.1.2 exit()函数和 return 关键字
return 和 exit的区别
- return是关键字exit是函数;
- exit是系统级的它表示进程的结束&