本章会聊:
- Suitable Tasks for Threading
- Models
- Buffering Data Between Threads
- Some Common Problems
- Performance
- Example: An ATM Server
- Example: A Matrix Multiplication Program
适合多线程任务的特征
- 任务有独立性
- io密集型任务
- cpu密集任务
- 处理一部时间
- 任务有多种优先级:比如说ui线程会比垃圾回收优先度高。
并发模型
- boss/worker model:nginx那种
- peer model:多个线程同时读取输入,自己锁住自己要的资源
- pipe model