1.背景知识
相比于多进程效率高,调度以线程为单位,分配内存以进程为单位。
防止CPU一直被占用
- 使用信号:和一般变量的区别就是,通过等待通知函数检测到信号量不匹配时线程会休眠让出cpu资源(将该时间片让出)
- 使用条件变量
防止同一资源被多线程抢用
使用互斥量:和一般变量的区别就是,通过上锁函数检测到锁被其他线程使用时时线程会休眠让出cpu资源(将该时间片让出)。mutex状态为0表示共享资源正在被其他线程/进程访问,状态为1表示没有被线程/进程访问。
2.使用流程
- 创建线程执行函数
- 创建线程——pthread_create