Method: Archipelago::Current::ThreadedCollection#t_each

Defined in:
lib/archipelago/current.rb

#t_each(callable = nil, &block) ⇒ Object

Like each, except calls block or callable within a new thread.



48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
# File 'lib/archipelago/current.rb', line 48

def t_each(callable = nil, &block)
  raise "You have to provide either callable or block" if callable.nil? && block.nil?

  threads = []

  self.each do |args|
    threads << Thread.new do
      call_helper(callable, args, &block)
    end
  end

  threads.each do |thread|
    thread.join
  end
end