🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
> ### defer, panic, recover * 在函数中添加多个defer语句, 当函数执行到最后时, 这些defer语句会按照逆序执行 ~~~ package main import "fmt" func main() { A() B() } func A() { defer func() { if err := recover(); err != nil { fmt.Println(err) } }() fmt.Println("Hi A1") panic("A") //recover 会跳过panic之后的所有语句 fmt.Println("Hi A2") } func B() { fmt.Println("Hi B") } ~~~ > ### 相关阅读 * #### [Defer, Panic, and Recover](https://my.oschina.net/chai2010/blog/119216) * #### [Go的异常处理 defer, panic, recover](http://blog.csdn.net/wuwenxiang91322/article/details/9042503) * [Go 延迟函数 defer 详解](https://mp.weixin.qq.com/s/5xeAOYi3OoxCEPe-S2RE2Q)