From 51d5c22a7c6479db48f68861a1d8755e12faf4ae Mon Sep 17 00:00:00 2001 From: dengsgo Date: Sat, 19 Jan 2019 17:17:55 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=20=E5=8E=BB=E9=99=A4?= =?UTF-8?q?=E6=97=A0=E6=95=88=E7=9A=84=E8=BE=93=E5=87=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- taskman.go | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/taskman.go b/taskman.go index 9a70d6e..dffa6ec 100644 --- a/taskman.go +++ b/taskman.go @@ -45,10 +45,9 @@ func (t *TaskMan) Put(cf *changedFile) { } func (t *TaskMan) preRun(cf *changedFile) { - if t.cmd != nil && t.cmd.Process != nil { + if t.cmd != nil && t.cmd.Process != nil && !t.cmd.ProcessState.Exited() { log.Println("stop old process ") - err := t.cmd.Process.Kill() - if err != nil { + if err := t.cmd.Process.Kill(); err != nil { log.Println(PreWarn, "stopped err, reason:", err) } } @@ -91,7 +90,7 @@ func (t *TaskMan) run(cf *changedFile) { log.Println(PreWarn, "cmd wait err ", err) break } - if t.cmd.Process != nil { + if t.cmd.Process != nil && !t.cmd.ProcessState.Exited() { if err = t.cmd.Process.Kill(); err != nil { log.Println(PreWarn, "cmd cannot kill, reason:", err) }