在Go語言中,可以使用recover()
函數來捕獲異常,并在defer函數中進行處理。下面是一個處理go異常的示例代碼:
package main
import (
"fmt"
)
func main() {
defer func() {
if err := recover(); err != nil {
fmt.Println("捕獲到異常:", err)
}
}()
panic("發生了一個異常")
}
在上面的代碼中,使用了defer
關鍵字來定義一個匿名函數,當發生異常時,會調用這個匿名函數。在匿名函數中,使用recover()
函數來捕獲異常,并將異常信息輸出到控制臺。
你也可以在異常捕獲后進行一些其他的操作,比如記錄日志、發送郵件等。