jruby-lint报告使用Timeout::Timeout作为潜在的问题来源:
./app/models/xyz.rb:273: [timeout, warning] Timeout in JRuby does not work in many cases
但在谷歌上搜索该警告似乎表明,报告的大多数错误已经修复或适用于非常具体的情况。此外,看起来JRuby对Timeout::Timeout的实现比MRI的实现更可靠、更高性能。是这样吗?
我用它来处理Net::HTTP请求中的超时,这是一个相当常见的用例,所以我想如果它不起作用,我会发现报告的打开错误。我可以无视jrlint的警告吗?
timeout应该比旧版本中好得多,因为它现在是在jruby中本地实现的(请参阅https://github.com/jruby/jruby/commits/master/src/org/jruby/ext/Timeout.java)与旧的ruby实现相比,后者确实相当糟糕。
从历史上看,自1.5以来,已经修复了一些与net/http相关的错误,因此使用1.6+可以获得最佳结果。
所以我想说,是的,你可以无视这个警告。