我正在使用gem从 Ideone.com 获取代码结果。gem 将代码提交给 Ideone,然后检查结果页面。它检查timeout
时间,如果没有结果则放弃。问题是它可能放弃得太早,但如果没有结果,我也不希望它等待太久。有没有办法知道什么时候应该放弃希望?
这是相关代码:
begin
sleep 3 if i > 0
res = JSON.load(
Net::HTTP.post_form(
URI.parse("http://ideone.com/ideone/Index/view/id/#{loc}/ajax/1"),
{}
).body
)
i += 1
end while res['status'] != '0' && i < timeout
if i == timeout
raise IdeoneError, "Timed out while waiting for code result."
end