我想在Ruby中运行一个线程安全的脚本,调用一个外部程序,然后检查该外部程序的退出状态。什么是最好的方式来做到这一点?到目前为止,我一直在检查$?
,但我认为我正在与该计划的其他部分竞争。ruby中线程安全的外部进程,以及检查退出状态
下面是一些示例代码:
Thread.new do
`external_program`
if $?.exitstatus == 0
# it worked.
else
# it didn't work.
end
end
理想情况下,我会做这样的事情
Process.new(`external_program`).exitstatus
使得exitstatus
是息息相关的,是过程,而不是最后一个恰好完成了。有没有办法做到这一点?
脚本是开源还是私有? – 2010-01-31 22:12:23
@Andrew:开源(这是我的脚本)。 – Peter 2010-02-01 03:13:25