goroutine中使用recover,解决协程中出现panic,导致程序崩溃的问题。recover panic 协程的错误处理

package main

import (
"fmt"
"time"
)

//goroutine中使用recover,解决协程中出现panic,导致程序崩溃的问题。
func sayhello() {
for i := 0; i < 10; i++ { time.Sleep(time.Second) fmt.Println("say hello") } } func test() { //这里可以使用错误处理机制defer + recover来解决 defer func() { //使用匿名函数捕获test抛出的panic //是一个内建的函数,可以让进入令人恐慌的流程中的 goroutine 恢复过来。 // recover仅在延迟函数中有效。 //在正常的执行过程中,调用 recover 会返回 nil 并且没有其他任何效果。 //如果当前的 goroutine 陷入恐慌,调用 recover 可以捕获到 panic 的输入值, //并且恢复正常的执行。recover只有在defer调⽤的函

goroutine中使用recover,解决协程中出现panic,导致程序崩溃的问题。recover panic 协程的错误处理最先出现在Python成神之路

版权声明:
作者:Alex
链接:https://www.techfm.club/p/25831.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>