提交 adede19a 编写于 作者: W WithLin

Fix app should exit

上级 a9377ea8
...@@ -92,7 +92,7 @@ func main() { ...@@ -92,7 +92,7 @@ func main() {
} }
//当程序卡死的时候,或者由于某些原因程序没有退出,可以通过捕获信号量的形式让程序优雅退出并且清理测试环境 //当程序卡死的时候,或者由于某些原因程序没有退出,可以通过捕获信号量的形式让程序优雅退出并且清理测试环境
go common.SignalNotify(func() { common.HandleSignal(func() {
if common.Config.DropTestTemporary { if common.Config.DropTestTemporary {
vEnv.CleanUp() vEnv.CleanUp()
} }
......
...@@ -20,10 +20,11 @@ import ( ...@@ -20,10 +20,11 @@ import (
"os" "os"
"os/signal" "os/signal"
"syscall" "syscall"
"time"
) )
//当程序卡死的时候,或者由于某些原因程序没有退出,可以通过捕获信号量的形式让程序优雅退出并且清理测试环境 //当程序卡死的时候,或者由于某些原因程序没有退出,可以通过捕获信号量的形式让程序优雅退出并且清理测试环境
func SignalNotify(f func()) { func HandleSignal(f func()) {
sc := make(chan os.Signal, 1) sc := make(chan os.Signal, 1)
signal.Notify(sc, signal.Notify(sc,
syscall.SIGHUP, syscall.SIGHUP,
...@@ -37,6 +38,8 @@ func SignalNotify(f func()) { ...@@ -37,6 +38,8 @@ func SignalNotify(f func()) {
case n := <-sc: case n := <-sc:
Log.Info("receive signal %v, closing", n) Log.Info("receive signal %v, closing", n)
f() f()
time.Sleep(250 * time.Millisecond)
os.Exit(0)
} }
}() }()
} }
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册