并行
并发执行多个代码块,返回结果数组。
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)注意
- 各分支跑在隔离的环境副本上,分支内对外层变量的修改不会汇总回去——跨分支收数据用返回数组或通道,别用共享变量累加。
- 结果数组按分支的书写顺序排列,不按完成先后。