mycommon/common.go

23 lines
304 B
Go

package mycommon
import (
"git.makemake.in/kzkzzzz/mycommon/mylog"
"runtime/debug"
)
func SafeFn(fn func()) {
defer func() {
if err := recover(); err != nil {
mylog.Errorf("panic: %s\n%s", err, string(debug.Stack()))
}
}()
fn()
}
func SafeGo(fn func()) {
go func() {
SafeFn(fn)
}()
}