一:线程概念
线程,操作系统所能调度的最小单位。典型的UNIX进程可以看成只有一个控制线程:一个进程在某一时刻只能做一件事情,有了多个控制线程以后,某一时刻每个线程都可以独立处理自己的任务。这种方法有许多好处:
- 通过为每种事件类型分配单独的处理线程,可以简化处理异步事件的代码。每个线程在进行事件处理时可以采用同步编程模式,同步编程模式要比异步编程模式简单的多。
- 与进程不同的是多线程可以自动的访问相同的存储地址空间和文件描述符。
- 有些问题可以分解为多线程执行从而提高整个程序的吞吐量。
- 交互的程序同样可以通过使用多线程来改善响应时间。
二:线程API
1、线程标识
线程ID使用pthread_t数据类型来表示。在线程中可以通过调用pthread_self函数来获得自身的线程ID
#include <pthread.h>
pthread_t pthread_self(void);
2、线程创建
#include <pthread.h>
int pthread_create(pthread_t *thread,