CSAPP:第十二章 并发编程
12.1 线程执行模型12.2 多线程之间并发通信12.3 其他并发问题
使用应用级并发的应用程序称为并发程序。现代操作系统提供三种基本的构造并发程序的方法:
- 进程
- I/O多路复用
- 线程
主要介绍下基于线程的并发编程
12.1 线程执行模型
每个进程开始生命周期都是单一线程,这个线程为主线程,在某一时刻,主线程创建一个对等线程,从这个时间点开始,两个线程并发地运行。
12.2 多线程之间并发通信
- 共享变量
- 使用信号量同步线程
- 使用信号量实现互斥
- 使用信号量来调度共享资源
12.3 其他并发问题
- 线程安全
- 可重入性
- 在线程化的程序中使用已存在的库函数
- 竞争
- 死锁