go实现异常捕捉

相信大家在使用go语言开发的,遇到很多不熟悉或者是很多难得点吧,其中针对go语言的异常捕获,和其他的语言不一样,使用起来相信大家也不知道怎么使用,接下来会写一个小例子,希望大家从小例子中掌握异常捕获

go 复制代码
func TestGoCountDown(t *testing.T) {
	fmt.Println("start")
	worker()
	fmt.Println("end")

}

func worker() {
	//	在这里进行一个异常的捕获,后面的异常会在这里捕获到,并不会影响 end的输出
	defer func() {
		if e := recover(); e != nil {
			fmt.Printf("Panicing %s\r\n", e)
		}
	}()
	badCall()
	fmt.Println("After bad call")
}

func badCall() {
	panic("bad call")
}
相关推荐
顾安r20 小时前
12.16 脚本网页 Golang标准库
golang·html
想不明白的过度思考者20 小时前
Java网络聊天室——OverThinker-ChatRoom
java·开发语言·网络
漂亮的小碎步丶20 小时前
【4】Spring Boot项目中Spring核心容器原理详解
java·后端·spring
过期动态20 小时前
JDBC进阶篇:拓展功能与连接池运用详解
java·开发语言·数据库·mysql·oracle·intellij-idea·mybatis
布伦鸽20 小时前
C# WPF -MaterialDesignTheme 找不到资源“xxx“问题记录
开发语言·c#·wpf
枫叶丹420 小时前
【Qt开发】Qt窗口(十) -> QInputDialog 输入对话框
c语言·开发语言·数据库·c++·qt
杰瑞不懂代码20 小时前
基于 MATLAB 的 BPSK 在 AWGN 信道下误码率仿真与性能分析
开发语言·网络·matlab
zore_c20 小时前
【C语言】EasyX图形库——实现游戏音效(详解)(要游戏音效的看过来!!!)
c语言·开发语言·经验分享·笔记·游戏
qq_3814549920 小时前
设计模式详解:代码架构的艺术
开发语言·javascript·ecmascript
行走的陀螺仪20 小时前
Vue3 项目单元测试全指南:价值、Vitest 落地与提效方案
开发语言·前端·单元测试·html5·vitest