Dav*_*wer 0 ruby automation ruby-on-rails
目前我有以下代码在ruby脚本中运行一些ruby脚本:
def run(base_directory, run_count)
working_directory = base_directory.gsub("\n","")
for i in 1..run_count
system("ruby " + working_directory + i.to_s + "\\" + "main.rb " + working_directory + i.to_s + "\\")
end
end
Run Code Online (Sandbox Code Playgroud)
但是,这会按顺序运行脚本,但我需要它们并行运行.我有10个脚本要运行,我想一次运行5个脚本,直到我达到需要运行的脚本数量.有没有一种简单的方法来实现这一目标?
小智 5
刚发现这个宝石平行.您可能必须像这样运行它:
results = Parallel.map(run_count.downto(1).to_a, :in_processes=>run_count){|i| system("ruby " + working_directory + i.to_s + "\\" + "main.rb " + working_directory + i.to_s + "\\") }
Run Code Online (Sandbox Code Playgroud)