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")
}
相关推荐
z***026014 分钟前
springboot整合modbus实现通讯
数据库·spring boot·后端
i***683217 分钟前
Spring Boot--@PathVariable、@RequestParam、@RequestBody
java·spring boot·后端
JienDa21 分钟前
JienDa聊PHP:算命平台实战中主流PHP框架的协同架构方略
开发语言·架构·php
h***066531 分钟前
Spring Boot 集成 Kettle
java·spring boot·后端
爱写代码的小朋友40 分钟前
21天学通Python全栈开发实战指南
开发语言·python
苦荞米40 分钟前
异步方法-C#中坑最大最深的功能
开发语言·c#
n***840743 分钟前
Springboot-配置文件中敏感信息的加密:三种加密保护方法比较
android·前端·后端
软件测试曦曦44 分钟前
使用Python接口自动化测试post请求和get请求,获取请求返回值
开发语言·自动化测试·软件测试·python·功能测试·程序人生·职场和发展
ヽ格式化1 小时前
Go与PHP变量声明全方位对比:从语法到性能的深度解析
golang·php
p***s911 小时前
Windows安装Rust环境(详细教程)
开发语言·windows·rust