我在Ruby学习线程。
我创建了一个帖子,但它不起作用。 我该如何解决?
puts 'start'
Thread.new do
puts 'thread'
10.times { |i| puts i }
end
puts 'start 2'
输出:
开始
开始2
答案 0 :(得分:3)
问题是主线程在没有执行其他线程的情况下结束。您必须使主线程等待它使用Thread#join
完成:
puts 'start'
Thread.new do
puts 'thread'
10.times { |i| puts i }
end.join
puts 'start 2'
答案 1 :(得分:0)
试
puts 'start'
t = Thread.new do
puts 'thread'
10.times { |i| puts i }
end
t.join
puts 'start 2'
或
puts 'start'
Thread.new do
puts 'thread'
10.times { |i| puts i }
end.join
puts 'start 2'