jiangshuai
2023-09-25 c2d8e537bb18c0892c0df6686ee5f5b5023f5bbb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
package safe
 
import (
    "runtime/debug"
    "wms/pkg/logx"
)
 
func Go(fn func()) {
    go func() {
        defer RecoverPanic()
        fn()
    }()
}
 
func RecoverPanic() {
    if r := recover(); r != nil {
        logx.Errorf("panic: %v, stack trace: %v", r, string(debug.Stack()))
        return
    }
}