2011-08-10 51 views

回答

9

您可以使用Process.spawn

一旦生成过程,您可以等待进程终止(使用waitpid)或detach它。

+0

+1'Process#spawn'比'IO#popen'更好地控制设置子进程。 – maerics

4

看到标准库IO#popen

f = IO.popen("date") 
f.gets # => "Wed Aug 10 14:56:59 MDT 2011\n" 
f.close 
+0

什么我应该担心如果我打算让子进程完成之前我Ruby进程结束?我假设我的子进程应该继续运行并清理掉,而不显式调用'f.close'? – Zach

+0

嗯,我想这取决于子进程在做什么,但只要你不需要父进程和子进程之间的任何交互,那么它应该没问题(例如,不需要调用“f.close”) 。 – maerics

+0

太好了。谢谢.. – Zach