第 13 章:并发基础:线程与进程
学习目标:
- 彻底理解 GIL 对 Python 并发的影响
- 掌握 threading 和 multiprocessing 的正确用法
- 能根据场景选择并发模型
13.0 为什么需要并发?——从现实问题出发
想象你在运营一个电商网站,需要完成以下任务:
| 任务 | 单线程耗时 | 说明 |
|---|---|---|
| 查询商品数据库 | 50ms | CPU 等待磁盘 I/O |
| 调用库存服务 API | 200ms | 网络等待 |
| 计算订单折扣 | 5ms | 纯计算 |
| 发送确认邮件 | 150ms | SMTP 网络 |
| 总计 | 405ms | 串行执行 |
用户每下一单就要等