go学习

golang---panic和recover的用法

2017-11-03  本文已影响0人  dncmn

在golang中对错误的处理,我这里是自己练习的总结。

1、将错误信息记录到日志里面

2、panic,然后利用recover函数进行异常捕获。(我这里仅仅是做了一个简单的例子,用来记录这个用法)

function A调用function B ,这里可以在 function A中使用recover也可以在function B中使用

*********************将日志信息保存到日志的代码****************************

//向登录日志里面写数据

//filename:为要保存日志的文件名

//content:为要向日志添加的内容

funcWrite_user_Info(filename,contentstring) {

file,err := os.OpenFile(filename,os.O_APPEND|os.O_RDWR|os.O_CREATE,0666)

iferr != nil {

log.Println("打开文件失败.....",err)

return

}

deferfile.Close()

usr_time := time.Now().Format("2006-01-02 15:04:05")

content = fmt.Sprint(usr_time,"  ",content,"\r\n")

_,err = file.WriteString(content)

iferr != nil {

log.Println("向日志中写数据失败.......",err)

return

}

}

*********************利用panic和recover函数****************************

funcTest_painc(T *testing.T) {

log.Println(getInt())

}

funcgetInt()int{

defer func()int{

iferr :=recover();err != nil {

log.Println(err)

}

log.Println("recover........continue")

return3

}()

log.Println("begin...........begin")

panic("hello panic")

}

上一篇 下一篇

猜你喜欢

热点阅读