recover函数捕获异常
2024-08-23 03:52:18
package main import (
//"fmt"
"time"
) func test () {
var m map[string]int
m["abcd"] = 1234
} func main () {
for i := 0; i < 100; i++ {
go test()
} time.Sleep(10 * time.Second)
}
不使用recover(),会直接panic影响后面的进程
2.使用recover()
//recover来捕获异常
package main import (
"fmt"
"time"
) func test () {
//使用recover来捕获异常
defer func () {
if err := recover(); err != nil {
fmt.Println("panic", err)
}
}() var m map[string]int
m["abcd"] = 1234
} func main () {
for i := 0; i < 100; i++ {
go test()
} time.Sleep(10 * time.Second)
}
进程不会panic
最新文章
- Zabbix监控disk performance
- sqlserver中索引优化
- HttpServletRequest接口实例化的使用
- 窥探Unity5渲染内部之解析UnityShaderVariables.cginc
- Android 开发佳站【转】
- 如何查看与更改python的工作目录?
- gem安装redis库时报错
- PHP命令执行与防范
- WEB学习笔记2-结构组织和文件命名
- 【阅读笔记】《C程序员 从校园到职场》第五章 内存操作
- suse 关于使用 /etc/init.d/boot.local的问题
- Expo大作战(十八)--expo如何发布成独立应用程序,打包成apk或者ipa,发布到对应应用商店
- pycharm最常用的快捷键总结
- Git - 忽略Xcode工程中UserInterfaceState.xcuserstate文件的问题
- Python3基础 type 获得变量的类型
- storm之 Storm 工作原理
- mouseenter 事件
- codeforces 355 div2 C. Vanya and Label 水题
- PD生成SQL脚本附带注释命令
- Oracle数据库学习(一):虚拟机下Oracle Linux的安装与配置