增加每章节 README 文件

This commit is contained in:
2026-09-22 15:57:59 +08:00
parent 8e86665096
commit 9445061c76
49 changed files with 3815 additions and 6 deletions
@@ -0,0 +1,55 @@
# Python 高级编程之并发与异步
> 所属:阶段一 · 前置核心基础
> 目标:理解多线程 / 多进程 / 协程三种并发模型,能为 IO 密集 vs CPU 密集任务选对工具。
---
## 📌 学习目的
理解多线程 / 多进程 / 协程三种并发模型,能为 IO 密集 vs CPU 密集任务选对工具。
## ✅ 学习要求(前置条件)
已完成「01_python_advanced_basics」与「02_python_advanced_syntax」。
## 📚 主要学习内容
- GIL 的影响与绕过(多进程 vs C 扩展)
- `threading` 线程池 / `concurrent.futures`
- `multiprocessing` 进程池与共享状态
- `asyncio`:事件循环 / `async/await` / Task / gather
- 异步上下文与同步代码互操作:`asyncio.to_thread` / `run_in_executor`
## 📖 对应 docs
- 目录:[`docs/01-阶段一-前置核心基础/`](../../docs/01-阶段一-前置核心基础/)(按目录名里的 `第 X 篇` 对应)
- 在 docs 目录里找到对应的小点 markdown 文件阅读详细理论。
## 🛠️ 建议练习
- [ ] 用线程池并发抓取 10 个 URL 的标题并计时
- [ ] 用 `asyncio.gather` 并发调用 5 个模拟 LLM 接口
- [ ] 对比多线程 / 多进程 / 协程在 IO 密集任务上的耗时差异
## 🏁 完成后达成标准
- [ ] 能说清 IO 密集用 asyncio,CPU 密集用 multiprocessing
- [ ] 能写正确的 `async/await` 代码并处理并发异常
- [ ] 能将同步阻塞调用丢进线程池不阻塞事件循环
---
## 🚀 运行提示
```bash
# 激活根目录的虚拟环境
cd /Users/jack/source/Demo/py/demo_python_agent
source .venv/bin/activate # 或直接用 uv run ...
# 进入本章目录
cd code/001_phase1_foundations/03_python_concurrency_async
# 跑你的练习文件
uv run python your_exercise.py
```