Module: Concurrent::Channel

Defined in:
lib/concurrent/channel/channel.rb

Defined Under Namespace

Classes: Probe

Class Method Summary collapse

Class Method Details

.select(*channels) ⇒ Object



33
34
35
36
37
38
39
# File 'lib/concurrent/channel/channel.rb', line 33

def self.select(*channels)
  probe = Probe.new
  channels.each { |channel| channel.select(probe) }
  result = probe.composite_value
  channels.each { |channel| channel.remove_probe(probe) }
  result
end