jiangshuai
2023-12-13 f4685db48aa53560b0e0e959aabc8c2b81ca3e4f
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
    }
}