第 17 章 · 进阶玩法
并行与分派:像带团队一样用它
当一个任务大到一个线程做不完时,你可以让它"派活给别人",同时干几件事。
三个层级,从简单到复杂
层级一:多开线程
最朴素也最有效。一件事做完,新开一个线程干另一件事,互不干扰,各自上下文都清爽。
适合:多个互不相关的小任务。
层级二:派子任务
让主线程当"项目经理":把大任务拆成几块,派出几个"下属"分别去做,最后汇总。
适合:任务能拆开、彼此不依赖,比如"同时研究五个方案"。
层级三:隔离工作区
几个执行者各自在独立副本里干活(代码场景常用),最后再合并,避免互相踩到对方的改动。
适合:多人/多任务同时改同一份代码。
什么任务适合并行
| 特征 | 能并行吗 | 例子 |
|---|---|---|
| 彼此独立,互不依赖 | 非常适合 | 分别调研 5 个工具、把 50 篇文档各写一句摘要 |
| 要读同一批资料,但各写各的 | 适合 | 同一份数据,分别写"给老板看的版本"和"给客户看的版本" |
| 后一步依赖前一步的结果 | 不适合 | "先设计数据库,再写接口,再写界面"——只能串行 |
| 都要改同一个文件 | 要小心 | 两个执行者同时改一个文件 = 互相覆盖。必须用隔离工作区 |
并行不是越多越好
每多一个执行者,就多一份"你要去核对它干了什么"的工作量。四个执行者各自跑偏,你最后要收拾四个烂摊子。
新手的正确姿势是:先串行做两三次,摸清这类任务该怎么描述,等你的指令能一次说准了,再考虑并行。顺序反了会很痛苦。
一条可以直接用的分派指令
分派任务
我要对比 4 个方案:[A]、[B]、[C]、[D]。
请派出 4 个独立任务,每个负责研究一个方案,都按同一份提纲:
1) 它解决什么核心问题
2) 上手难度(新手视角)
3) 免费额度和限制
4) 最大的坑
每个任务只输出这一份结论,不要发散。
全部完成后,由你汇总成一张对比表,并给出你的推荐和理由,
最后单独列出"信息不确定、需要我自己核实"的条目。
最后那句"列出需要我自己核实的地方"值得养成习惯——它把"我知道什么"和"我在猜什么"分开了,你对结论的信任度立刻清晰。
提示:用键盘 ← → 可以翻到上一章 / 下一章