Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
294 views
in Technique[技术] by (71.8m points)

go - Golang: Kill an os.Process with exec.ExitError

If I have a os.Exec object called "myCmd" and I call myCmd.Process.Kill(), what is the return code behavior of the process? Will it return a exec.ExitError? I want to forcefully kill the os.Exec process (i.eo kill -9), have it return a exec.ExitError or something that my goroutine can distinguish for a normal cmd exit with return code 0.

What I have so far:

myCmd.Start()

var cmdWatcher = func(childCmd os.Cmd) {

    err := childCmd.Wait()
    if exitErr, k := err.(*exec.ExitError); k {
        fmt.Print("ExitError detected")
    }
    return 
}

go cmdWatcher(myCmd)

myCmd.Process.Kill()
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)
Waitting for answers

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...