小学生也能看懂的Golang异常处理recover panic
作者:毛毛是一只狗 发布时间:2024-02-08 20:32:36
标签:Golang,异常处理,recover,panic
🌌 专注Golang,Python语言,云原生,人工智能领域得博主
💜 过去经历的意义在于引导你,而非定义你,
💜 只要我们足够努力,任何人都有无限潜力
🚀panic 抛出异常函数
🚀recover 捕获异常函数
📣1:在一个主协成内捕获异常
package main
import (
"fmt"
)
func main(){
defer func(){
err := recover()
if err != nil{
fmt.Println("捕获到异常")
}
}()
panic("异常出现") //抛出异常,代表错误代码
}
🚀运行结果
📣2:假设子协成内部错误,看看主协成能不能捕获到
package main
import (
"fmt"
)
func Calculate(){
panic("异常出现") // 同样代表错误代码
}
func main(){
defer func(){
err := recover()
if err != nil{
fmt.Println("捕获到异常")
}
}()
go Calculate()
time.Sleep(time.Second*3) //防止主协成过早退出,导致子协成没执行
}
🚀执行结果,主协成不能捕获到子协成的错误
📣3:假设子协成错误需要自己捕获
package main
import (
"fmt"
"time"
)
func Calculate(){
defer func(){
err := recover()
if err != nil{
fmt.Println("协成内部捕获异常")
}
}()
panic("异常出现")
}
func main(){
go Calculate()
time.Sleep(time.Second*3)
}
执行结果,成功捕获异常
来源:https://blog.csdn.net/weixin_43270713/article/details/120272891


猜你喜欢
- 从今天开始起,基督山将和大家一起进入ASP.net 诸多程序的学习中,老实说,.net到底是法宝还是垃圾,我们拭目以待。有任何问题,联络基督
- python类私有属性和公共属性对于python而言,类的属性的可见度只有两种,public和private。类的私有属性便是在前面加上&a
- 本文研究的主要是Python使用requests发送POST请求的相关内容,具体介绍如下。一个http请求包括三个部分,为别为请求行,请求报
- asp.net的dropdownlist控件为我们的web应用提供了许多用处,但有一点我总感觉不爽的就是在使用dropdownlist的事件
- <title>:一个优质网页最重要的元素HTML 中的 <title> 元素用于在下列情况中提供一小段能够代表该网页
- 接触replication后,就开始琢磨自己要配置下试试,固然出现了很多问题:经过上网查资料也好问同学也好,终于是解决了些.现在就分享下自己
- 目录一、路由配置二、vue页面嵌套三、嵌套联系一、路由配置const routes = [ { pat
- 成功解决NLTK包的安装错误创建环境NLP_Pre_trainl环境conda create -n NLP_Pre_train python
- 堆是一种特殊的树形结构, 堆中的数据存储满足一定的堆序。堆排序是一种选择排序, 其算法复杂度, 时间复杂度相对于其他的排序算法都有很大的优势
- 前言:由于很多业务表因为历史原因或者性能原因,都使用了违反第一范式的设计模式。即同一个列中存储了多个属性值(具体结构见下表)。这种模式下,应
- 需求是在某一指定的时刻执行操作网上的建议多为通过调用Scheduler的add_date_job实现不过APScheduler 3.0.1与
- 在继承的使用上,我们最早接触的是父类和子类的继承。不过Flask框架中的继承要简单一些,只要有一个原文件,便可以对其进行继承和修改的操作了。
- 查找所有数据库中没有主键的表select table_schema,table_name from information_schema.t
- 一、数据库、表的创建与删除1. 创建数据库使用可视化管理工具是创建 SQL Server 数据库最常使用的方法,其特点是简单、高效。下面将以
- 之前呢,我一直对GUI不是很感兴趣,但是呢,最近由于某些特殊原因,导致不得不用tkinter,需要实现一个渐变色,但是当我翻阅文档的时候,却
- 1.sort()首先看sort()方法,sort方法只能对列表进行操作,而sorted可用于所有的可迭代对象。a = [1, 5, 3, 4
- 本文实例讲述了pymongo实现多结果进行多列排序的方法。分享给大家供大家参考。具体分析如下:这里多列排序即指定多个排序字段。集合查询结果排
- 1、主动删除对象调用del 对象;程序运行结束后,python也会自动进行删除其他的对象。class Animal: &nbs
- 在“按需加载”的需求中,我们经常会判断当脚本加载完成时,返回一个回调函数,那如何去判断脚本的加载完成呢?我们可以对加载的 JS 对象使用 o
- 一、excel进入密码加密算法cipher Algorithm=“AES”AES加密算法的详细介绍与