package main
import (
"fmt"
)
func main() {
defer func() {
e := recover()
if e != nil {
fmt.Println("抛出异常:", e)
}
}()
one()
two()
three()
}
这样one two three三个任何一个抛出错误都会被前面的闭包函数获取到,并且打印出错误
package main
import (
"fmt"
)
func main() {
defer func() {
e := recover()
if e != nil {
fmt.Println("抛出异常:", e)
}
}()
one()
two()
three()
}
这样one two three三个任何一个抛出错误都会被前面的闭包函数获取到,并且打印出错误
转载于:https://my.oschina.net/lengxugz/blog/504251