在 Golang 中,没有恢复的 panic 会使进程崩溃,所以我最终将以下代码片段放在每个函数的开头:
defer func() {
if err := recover(); err != nil {
fmt.Println(err)
}
}()
只是为了防止我的程序崩溃。现在我想知道,这真的是要走的路吗?因为我觉得到处放同样的代码看起来有点奇怪。
在我看来,Java 方式将异常冒泡到调用函数,直到主函数是控制异常/恐慌的更好方法。我知道这是 Go 的设计,但是像 Go 一样立即使进程崩溃有什么好处?
海绵宝宝撒
凤凰求蛊
相关分类