17 lines
204 B
Go
17 lines
204 B
Go
package safe
|
|
|
|
import (
|
|
"fmt"
|
|
)
|
|
|
|
func SafeGO(fn func(), errs chan<- error) {
|
|
go func() {
|
|
defer func() {
|
|
if r := recover(); r != nil {
|
|
errs <- fmt.Errorf("panic: %v", r)
|
|
}
|
|
}()
|
|
fn()
|
|
}()
|
|
}
|