lib/rbbt/util/misc/development.rb in rbbt-util-5.14.15 vs lib/rbbt/util/misc/development.rb in rbbt-util-5.14.16

- old
+ new

@@ -270,19 +270,25 @@ $_last_time_tick = Time.now end end def self.bootstrap(elems, num = :current, file = nil, &block) + num = :current if num.nil? cpus = case num when :current 4 + when String + num.to_i when Integer if num < 100 num else 32000 / num end end file = caller.first + rand(1000000).to_s if file.nil? - RbbtSemaphore.fork_each_on_semaphore elems, cpus, file, &block + index = (0..elems.length-1).to_a.collect{|v| v.to_s } + RbbtSemaphore.fork_each_on_semaphore index, cpus, file do |i| + yield elems[i.to_i] + end end end