是否有 Ruby 超时模块的 Groovy 等价物



在Ruby中,我会使用Timeout模块,它执行一个块,如果它通过超时,它将停止执行代码。

require 'timeout'
status = Timeout::timeout(5) {
  # Something that should be interrupted if it takes too much time...
}

格鲁维有这样的东西吗?

TimedInterrupt注释,但我还没有尝试过......

给了它一个快速测试,这个(糟糕的例子):

@groovy.transform.TimedInterrupt( 5L )
def loopy() {
  int i = 0
  try {
    while( true ) {
      i++
    }
  }
  catch( e ) {
    i
  }
}
println loopy()

在时髦的控制台中运行,并在 5 秒后打印出i

我得到:

47314150

相关内容

  • 没有找到相关文章

最新更新