在编写golang里面有没有其他语言 try{}catch(e){}类似的错误处理呢?
答案是有的:
panic() 和 recover()
具体实现方法如下:
//路由回调处理函数
func autoFunc(a map[string]string){
defer fmt.Println("宕机")
defer func() {
perr := recover()
fmt.Println("宕机保护",perr)
}()
//调用一个不存在map值触发宕机
b := a["bb"]
c := b + "aa"
fmt.Printf("%v",c)
}
a := make(map[string]string,4)
a["aa"] = "123"
autoFunc(a)
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://www.haodehen.cn/did18516