Sha256: cc5ae22b979e5a6a8bd7181a7a6726d4420b53549f2f8988be76a8fc6d7cef79

Contents?: true

Size: 302 Bytes

Versions: 26

Compression:

Stored size: 302 Bytes

Contents


def par_map(n, things, &block)
  queue = Queue.new
  things.each { |thing| queue << thing }
  threads = (1..n).collect do
    Thread.new do
      begin
        while true
          yield queue.pop(true)
        end
      rescue ThreadError

      end
    end
  end
  threads.each { |t| t.join }
end

Version data entries

26 entries across 26 versions & 1 rubygems

Version Path
ceedling-0.31.1 lib/ceedling/par_map.rb
ceedling-0.31.0 lib/ceedling/par_map.rb
ceedling-0.30.0 lib/ceedling/par_map.rb
ceedling-0.28.3 lib/ceedling/par_map.rb
ceedling-0.28.2 lib/ceedling/par_map.rb
ceedling-0.28.1 lib/ceedling/par_map.rb
ceedling-0.27.0 lib/ceedling/par_map.rb
ceedling-0.25.0 lib/ceedling/par_map.rb
ceedling-0.24.0 lib/ceedling/par_map.rb
ceedling-0.22.0 lib/ceedling/par_map.rb
ceedling-0.21.0 lib/ceedling/par_map.rb
ceedling-0.20.3 lib/ceedling/par_map.rb
ceedling-0.20.2 lib/ceedling/par_map.rb
ceedling-0.19.0 lib/ceedling/par_map.rb
ceedling-0.18.0 lib/ceedling/par_map.rb
ceedling-0.17.0 lib/ceedling/par_map.rb
ceedling-0.16.0 lib/ceedling/par_map.rb
ceedling-0.15.6 lib/ceedling/par_map.rb
ceedling-0.15.5 lib/ceedling/par_map.rb
ceedling-0.15.4 lib/ceedling/par_map.rb