(P37)posix线程

(P37)posix线程
(P37)posix线程
线程是单独的控制序列
所指向的函数,要接收void类型的参数,所指向的函数的返回值类型也是void
(P37)posix线程
每个线程都有自己的errno变量
(P37)posix线程

(P37)posix线程

2个线程是交替运行的,先运行谁,这取决于系统如何调度线程的
(P37)posix线程

进程 线程
等待子进程waipid pthread_join
退出进程,可以在任何位置调用exit 退出线程,在线程控制序列的任何位置调用pthread_exit
在main函数中return(表示进程执行完毕,则进程消亡) 在线程入口函数中调用return(表示线程执行完毕,则线程消亡)

僵尸进程(产生:子进程结束,父进程还没结束,那么子进程会保留一个状态直到父进程调用wait或者waitpid,此时僵尸进程的状态才消失)
僵尸线程(产生:子线程结束了,而主线程没有调用join,那么子线程将处于僵尸线程的状态,因为有些主线程不会使用join,所以可以调用pthread_detach脱离一个线程,该方法不会产生僵尸线程)

kill(一个进程杀死另外一个进程) pthread_cancel(一个线程杀死另外一个线程)

线程结束:
(1)自杀
退出线程,在线程控制序列的任何位置调用pthread_exit;
在线程入口函数中调用return(表示线程执行完毕,则线程消亡);
(2)他杀
pthread_cancel(一个线程杀死另外一个线程)

(P37)posix线程(P37)posix线程

(P37)posix线程
由其它线程执行的
(P37)posix线程

(P37)posix线程

(P37)posix线程

避免僵尸线程
(P37)posix线程

(P37)posix线程

一个客户端过来,就创建一个新的线程来处理它
(P37)posix线程
客户端退出,线程也就结束了
(P37)posix线程