diff --git a/application/library/config/cliconfig.go b/application/library/config/cliconfig.go index 8e18688b1..6ea788635 100644 --- a/application/library/config/cliconfig.go +++ b/application/library/config/cliconfig.go @@ -169,7 +169,7 @@ func (c *CLIConfig) CmdGroupStop(groupName string) error { continue } err := c.Kill(cmd) - if err != nil && !errors.Is(err, os.ErrProcessDone) { + if err != nil { log.Errorf(`failed to %v.Kill: %v`, key, err) } } @@ -215,9 +215,6 @@ func (c *CLIConfig) CmdStop(typeName string) error { } err := c.Kill(cmd) if err != nil { - if errors.Is(err, os.ErrProcessDone) { - return nil - } err = fmt.Errorf(`failed to cliconfig.CmdStop(%q): %v`, typeName, err) } return err diff --git a/application/library/cron/init.go b/application/library/cron/init.go index 86365eb43..fefb65cfc 100644 --- a/application/library/cron/init.go +++ b/application/library/cron/init.go @@ -20,7 +20,9 @@ package cron import ( "context" + "errors" "fmt" + "os" "os/exec" "time" @@ -82,7 +84,7 @@ func runCmdWithTimeout(cmd *exec.Cmd, timeout time.Duration, ctx context.Context go func() { <-done // 读出上面的goroutine数据,避免阻塞导致无法退出 }() - if err = cmd.Process.Kill(); err != nil { + if err = cmd.Process.Kill(); err != nil && !errors.Is(err, os.ErrProcessDone) { log.Errorf("进程[%d]无法关闭, 错误信息: %s", cmd.Process.Pid, err) } }