所以我在 Rails 3.1 中使用 Resolver 来尝试获取服务器的 DHCP 地址,我希望允许它有一定的时间来查询......也许是 0.5 秒,因为它减慢了我的整个请求。
这就是我现在所拥有的。。
$begin
$Resolver('ipaddress').answer[0]
$rescue
$end
这目前需要一段时间,所以有没有办法说“我想运行这个片段 0.5 秒”然后继续?
谢谢!
所以我在 Rails 3.1 中使用 Resolver 来尝试获取服务器的 DHCP 地址,我希望允许它有一定的时间来查询......也许是 0.5 秒,因为它减慢了我的整个请求。
这就是我现在所拥有的。。
$begin
$Resolver('ipaddress').answer[0]
$rescue
$end
这目前需要一段时间,所以有没有办法说“我想运行这个片段 0.5 秒”然后继续?
谢谢!
http://ruby-doc.org/stdlib-1.9.3/libdoc/timeout/rdoc/Timeout.html
require 'timeout'
begin
Timeout::timeout(0.5) do
Resolver('ipaddress').answer[0]
end
rescue Timeout::Error => e
# do something
end