知识卡片

超时是并发契约

专业/工作 · 471.b.4.a

内容

给并发任务设置超时时间,可以把无限等待变成明确失败路径。发散:没有超时的 goroutine,常常是未来泄漏的开始。[[Runner管理生命周期]]正是把这个契约用在了任务生命周期管理上。

参考来源

- 位置:《Go语言实战》第7章《并发模式》(源文件:_epub-src/OEBPS/Text/part0017.xhtml) - 结论依据:原文围绕“timeout报告处理任务已经超时”给出定义、机制、流程、对比或限制条件,本卡片据此提炼可迁移的 Go 语言/工程结论,并补充边界或实践启发。 - 原始内容:19 // complete通道报告处理任务已经完成 20 complete chan error 21 22 // timeout报告处理任务已经超时 23 timeout <-chan time.Time 24 25 // tasks持有一组以索引顺序依次执行的 26 // 函数 27 task……