知识卡片
Select做多路选择
内容
select 在多个 channel 操作之间选择可执行分支,是 Go 并发多路复用的基础。发散:select 把等待策略写成语法,而不是散落在回调里。语言层用法见[[Select管理多路等待]]。
参考来源
- 位置:《Go语言入门到实战(共3册)》第44章《Go语言学习笔记:第19章 通道》(源文件:_epub-src/text/part0121.html)
- 结论依据:原文围绕“select”给出定义、机制、流程、对比或限制条件,本卡片据此提炼可迁移的语言/工程结论,并补充了边界或实践启发。
- 原始内容:func chanrecv(t *chantype, c *hchan, ep unsafe.Pointer, block bool) (selected, received bool) {