这是一个示例程序:
def worker(from, to)
puts "#{from}..#{to}"
for i in from..to do
if i == 42
puts "kill the rest of the threads"
break;
end
puts i
sleep 1
end
end
if __FILE__ == $0
threads = []
for i in 0..9 do
threads << Thread.new { worker(i*10, i*10+10) }
end
threads.each { |thread| thread.join }
end
当其中一个线程找到答案时(在本例中为 42),我希望所有线程都停止。我不确定这个概念叫什么,这就是为什么我无法搜索它。
我很感激帮助:)