프로세스의 PID가있는 경우 os.FindProcess이면 프로세스를 테스트 할 수 있습니까? 내 말은 그것이 err
을 반환한다면 그것이 종결되었다고 가정 할 수 있습니까?진행중인 프로세스가 있는지 확인하십시오.
편집 :
난 그냥 래퍼 함수 주위 kill -s 0
(이전 스타일의 bash 프로세스 테스트)를 작성했습니다. os.FindProcess 것이 아무 문제없이 작동하지만 다른 솔루션이 문제 : (등 리눅스, FreeBSD의) 시스템과 같은 UNIX에서
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
}
그게 전부 야! 이동 방법을 보여 주셔서 감사합니다 :) –
왜 당신은'int64'로 구문 분석하고 있습니다. 'Atoi'가 더 좋지 않습니까 ('FindProcess'에서 타입 변환 안함)? – tjameson
네가 맞다. '아토이'가 더 좋을 것이다. 나는 최근에'ParseInt'를 사용하여 그것을 잊어 버렸습니다. –