# 并行
**并发执行多个代码块,返回结果数组。**
```xuantie
设 汇总 = 并行 {
{ 时.睡(500); 返 "A" }
{ 时.睡(300); 返 "B" }
{ 返 "C" }
}
// 汇总 = ["A", "B", "C"]
```
## 你可以……
- **只要并发、不要结果**——当语句写,配通道收数据:
```xuantie
设 ch = 道(2)
并行 {
{ ch.发(10) }
{ ch.发(20) }
}
示(ch.收() + ch.收())
```
- **分支里再套异步任务**——分支可以是任意语句,包括 `异步` 块:
```xuantie
设 t = 并行 {
异步 {
设 a = 异步 { 时.睡(200); 返 "甲" }
等待(a)
}
异步 { 时.睡(100) }
}
等待(t)
```
## 注意
- 各分支跑在隔离的环境副本上,分支内对外层变量的修改不会汇总回去——跨分支收数据用返回数组或通道,别用共享变量累加。
- 结果数组按分支的书写顺序排列,不按完成先后。
## 相关
[异步](异步.md) · [等待](等待.md) · [道](道.md)