jiangshuai
2023-09-28 6856a595e0523216c16c03c58110f4ce80fa88b5
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
    }
}