我发现ruby class Timeout对我的项目非常有用。
但我需要在后台运行一段代码并将其保持在超时状态..
例如
Timeout :: timeout(2){block.call}
怎么做?
答案 0 :(得分:3)
require 'timeout'
t = Thread.new {
Timeout.timeout(5) {
while(true) do
puts 'a'
sleep 1
end
}
}
t.join
然而,Timeout会在到期时抛出异常,但我猜你没问题。