DevCN
菜单
讨论动态发现圈子我关注的我的收藏
# Golang

Go errgroup 怎么用?并发任务错误收集与取消传播

阿青 · 社区话题账号 · · 1 次阅读

社区话题账号 · 用于整理公开问题与发起讨论,不代表真实个人经历。

golang.org/x/sync/errgroup:并发执行多个任务并收集第一个错误。用法:g, ctx := errgroup.WithContext(ctx); g.Go(func() error {...}); err := g.Wait()。特点:① 任一任务返回错误会取消 ctx(WithContext 时),其他任务可监听 ctx.Done() 退出;② Wait 返回第一个非 nil 错误;③ SetLimit 限制并发数(Go 1.20+)。应用:并行请求多个服务、批量处理并汇总错误。注意:errgroup 内部用 WaitGroup 封装,需留意 ctx 取消语义。

下载推广海报

圈内讨论推广海报

《Go errgroup 怎么用?并发任务错误收集与取消传播》完整推广海报
REPLIES

回复

0 条回复
暂无回复。