Files
tinyUSB/test/unit-test/vendor/ceedling/lib/ceedling/par_map.rb
hathach 3623ba1884 fix trailing space and new line
temporarily disable codespell
2023-03-17 16:12:49 +07:00

19 lines
301 B
Ruby

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