Ruby에서 외부 프로그램을 호출하는 thread-safe 스크립트를 실행하고 그 외부 프로그램의 종료 상태를 확인하고 싶습니다. 가장 좋은 방법은 무엇입니까? 지금까지 나는 $?
을 확인했지만 프로그램의 다른 부분과 경쟁 조건이 있다고 생각합니다. 여기 Ruby의 스레드 안전 외부 프로세스와 exitstatus 검사
exitstatus
은 우연이 아니라 마지막 하나보다,
해당 프로세스에 묶여 있도록 내가
Process.new(`external_program`).exitstatus
처럼 뭔가를 할 것, 이상적으로
Thread.new do
`external_program`
if $?.exitstatus == 0
# it worked.
else
# it didn't work.
end
end
그 일이 완료되었습니다. 이 일을 할 수있는 방법이 있습니까?
스크립트는 오픈 소스입니까, 비공개입니까? –
@Andrew : 오픈 소스 (내 스크립트). – Peter