Go并发编程——select
select 用于处理异步 IO 问题,它的语法与 switch 非常类似。由 select 开始一个新的选择块,每个选择条件由 case 语句来描述,并且每个 case 语句里必须是一个 channel 操作。它既可以用于 channel 的数据接收,也可以用于 channel 的数据发送。如果 select 的多个分支都满足条件,则会随机的选取其中一个满足条件的分支。
新建源文件 channel.go,输入以下代码:
1 | |
以上代码先初始化两个 channel c1 和 c2,然后开启两个 goroutine 分别往 c1 和 c2 写入数据,再通过 select 监听两个 channel,从中读取数据并输出。
运行结果如下:
1 | |
Go并发编程——select
https://hodlyounger.github.io/2023/10/27/B_Code/GO/Go简明手册/并发与并行/select/【Go并发编程】README/