标签: go
根据godoc:
关闭数据库很少见,因为数据库句柄是长寿命的 许多goroutines之间共享。
除了在defer db.Close()函数中调用main之外,是否有此方法的用例?
defer db.Close()
main
答案 0 :(得分:1)
我从不关闭数据库。将它推迟到主要可能不会受到伤害......但它也不会有任何帮助。 main的结尾是程序的结束,如果main结束,操作系统会进行清理。
编辑:
那么为什么我们需要在数据库/ sql包的公共API中使用它呢?
如果您不打算再次使用数据库,关闭数据库非常有用。它完成了在程序终止时完成的所有清理工作,但允许程序继续运行。