知识卡片

Select做多路选择

专业/工作 · 470.b.1.a.1.c.3.a.8.e.1.b.1.a

内容

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) {