go 语言通过defer调用实现资源管理
- defer
- panic
- 停止当前函数执行
- 一直向上返回,执行每一层的defer
- 如果没有遇见recover,程序会退出
- recover
- 仅在defer调用中使用
- 获取panic的值
- 如果无法处理,可重新panic
- error vs panic
- 意料之中的:使用error,如:文件打不开
- 意料之外的:使用panic,如:数组越界
本文参与
腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-07-09,如有侵权请联系
cloudcommunity@tencent.com 删除