我基本上问的问题与Spawn a background process in Ruby相同,除了我需要在Windows环境中生成后台进程!不幸的是,我的研究表明Windows不支持Ruby分支(只有勺子。 Rimshot!)。
答案 0 :(得分:13)
win32-process库是Win32Utils套件的一部分,可能就是你所追求的。
http://win32utils.rubyforge.org/
win32-process库为MS Windows添加了Process.create和Process.fork方法。另外,它提供了wait,wait2,waitpid和waitpid2方法的不同实现。 Process.create方法允许您使用各种不同的配置选项创建本机MS Windows进程。
Process.fork实现应该被认为是实验性的,不能在生产代码中使用。
安装:gem install win32-process
答案 1 :(得分:5)
start
来执行dir
命令:
system('start dir')
这会产生一个cmd窗口以及该过程,这在某些情况下是不可取的。但是,如果这是可以容忍的,那么您不需要win32-process依赖:)
答案 2 :(得分:3)
1.9.x的Process.spawn似乎运作良好,请参阅http://en.wikibooks.org/wiki/Ruby_Programming/Running_Multiple_Processes的最后一部分