在 Go 中,错误就是价值;它们由代码创造,也由代码消耗。错误可以是:
错误信息也显示在各种不同的渠道,包括日志信息、错误转储和渲染的 UI。
处理(产生或消耗)错误的代码应该刻意这样做。忽略或盲目地传播错误的返回值可能是很诱人的。然而,值得注意的是,调用框架中的当前函数是否被定位为最有效地处理该错误。这是一个很大的话题,很难给出明确的建议。请使用你自己的判断,但要记住以下的考虑。
虽然忽略一个错误通常是不合适的,但一个合理的例外是在协调相关操作时,通常只有第一个错误是有用的。包errgroup
为一组操作提供了一个方便的抽象,这些操作都可以作为一个组失败或被取消。
也请参见: