如何使用内建函数 recover 终止 panic 过程(参考 章节 13.3):
func protect(g func()) {defer func() {log.Println("done")// Println executes normally even if there is a panicif x := recover(); x != nil {log.Printf("run time panic: %v", x)}}()log.Println("start")g()}
