24 lines
416 B
Go
24 lines
416 B
Go
package util
|
|
|
|
//带有panic恢复的方法
|
|
func PanicHandler() {
|
|
if err := recover(); err != nil {
|
|
//TODO 全局日志记录
|
|
//LOGGER.Error("异步任务错误: %v", err)
|
|
}
|
|
}
|
|
|
|
//带有panic恢复的方法
|
|
func SafeMethod(f func()) {
|
|
defer PanicHandler()
|
|
//执行函数
|
|
f()
|
|
}
|
|
|
|
//处理错误的统一方法 可以省去if err!=nil 这段代码
|
|
func PanicError(err error) {
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
}
|