11.5线程终止

如果进程中的任一线程调用了exit,_Exit 或者 _exti,那么整个进程会终止。类似的,当默认动作是终止进程,传送到线程的信号会终止整个进程。(在12.8节中我们会讨论更多线程和信号间的交互与通信);

 

一个单线程有三种退出方式,在不终止整个进程的情况下,终止线程的控制流。

1.线程从启动例程中返回,返回值就是线程的退出码。

2.线程可以被同进程中的其他线程取消。

3.线程调用pthread_exit.

#include<pthread.h> void pthread_exit(void *rval_ptr); 

 

rval_ptr 是一个空类型指针,与传递给启动例程的单个参数类似。

通过调用pthread_join,这个指针可以补进程中的其他线程利用。

 

#include <pthread.h> int pthread_join(pthread_t thread, void **rval_ptr);  

如果成功返回0,否则返回错误码。

 

待续…………

 

你可能感兴趣的:(JOIN,thread,多线程)