如果我有进程的 PID,os.FindProcess 是否足以测试进程的存在?我的意思是,如果它返回err,我可以假设它已终止(或被杀死)吗?
编辑:
我刚刚写了一个包装函数kill -s 0(旧式 bash 进程测试)。这没有任何问题,但如果有其他解决方案(使用 go 库完成)解决此问题,我仍然很高兴。:
func checkPid(pid int) bool {
out, err := exec.Command("kill", "-s", "0", strconv.Itoa(pid)).CombinedOutput()
if err != nil {
log.Println(err)
}
if string(out) == "" {
return true // pid exist
}
return false
}
蛊毒传说
一只萌萌小番薯
相关分类