Golang 中 defer Close() 的潜在风险

作为一名 Gopher,我们很容易形成一个编程惯例:每当有一个实现了 io.Closer 接口的对象 x 时,在得到对象并检查错误之后,会立即使用 defer x.Close 以保证函数返回时 x 对象的关闭 。