6.exit && _exit && _Exit

版权声明:本博客为记录本人学习过程而开,内容大多从网上学习与整理所得,若侵权请告知! https://blog.csdn.net/Fly_as_tadpole/article/details/82764788

进程的终止有8种方式,5种正常终止和3中异常终止

5种正常终止:

1:从 main 执行return返回。
2:调用 exit(int x), 程序返回码是x,调用各种中止处理程序,关闭或冲洗缓冲区。  
3:调用 _exit(int) 或 _Exit(int),提供一种无须调用各种中止处理程序就能进行终止的方法。
4:最后一个线程从其启动例程返回。
5:最后一个线程调用pthread_exit。

异常终止有3种:
6:调用 abort。产生SIGABRT信号。
7:接到一个信号并终止。信号可以由进程自身(调用abort函数)、其他进程或内核产生。
8:最后一个线程对取消请求做出响应(一个线程要求取消另外一个进程)。


atexit用来登记终止处理程序,exit调用终止处理程序的顺序和它们登记时候的顺序相反。


内核使程序执行的唯一的方式是调用exec函数。

进程可以自愿的终止(调用exit/_exit/Exit),也可以非自愿的由一个信号终止。

猜你喜欢

转载自blog.csdn.net/Fly_as_tadpole/article/details/82764788