zhangqian
2023-10-20 a98b2ed2ddcf15db5b20907cd502e157d04d1b88
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
    }
}