当前位置: 首页 > 面试题库 >

Java:在特定代码块上设置超时?

柯河
2023-03-14
问题内容

在某些代码块的运行时间超过可接受的时间之后,是否可以强制Java引发Exception?


问题答案:

是的,但是强制另一个线程在随机的代码行上中断通常是一个非常糟糕的主意。仅当您打算关闭该过程时,才这样做。

您可以做的是Thread.interrupt()在一定时间后用于任务。但是,除非代码对此进行检查,否则它将无法正常工作。ExecutorService可以使此操作更容易Future.cancel(true)

代码自动计时并在需要时停止会更好。



 类似资料:
  • 问题内容: 情况 我有一个简单的python脚本来获取给定URL的HTML源: 有时,URL指向外部资源加载缓慢的页面(例如,视频文件或非常慢的广告内容)。 在完成请求之前,Webdriver将等待直到加载了这些资源。 注意:由于其他原因,我需要使用PhantomJS而不是或 问题 我想在PhantomJS资源加载上设置一个超时,以便如果资源加载时间太长,浏览器只会认为它不存在或其他原因。 这将允

  • 我的应用程序中有一些子模块。有些我希望有代码覆盖率规则,有些我希望完全免除。 我的项目的根POM继承自父POM,该POM已将JaCoCo配置为: 在一个子模块中,我希望有50%的代码覆盖率,我已将JaCoCo配置为: 此模块的代码覆盖率绝对为零,但运行mvn clean verify不会产生任何错误。 我想也许我必须在根POM中定义它,所以我这样做: mvn clean verify是否产生错误:

  • 问题内容: 需要使用java.net.URL类进行的远程数据请求超时设置。经过一番谷歌搜索后,发现有两个系统属性可用于设置URL类的超时,如下所示。 我无法控制所有系统,也不希望每个人都继续设置系统属性。是否有其他选择可以进行远程请求,这将允许我设置超时。如果没有任何库,则最好使用Java本身。 问题答案: 如果您要打开from ,则可以通过以下方式设置超时时间: 您如何使用或将其传递给什么?

  • 我有一个同步终结点,定义如下: 当30秒后返回的<code>Future<code>未完成时,请求将被取消。 如何增加此特定终结点的超时(例如,增加到 100 秒)? 我只找到了更改所有endpoint的答案: 指定Spring中控制器异步方法的超时时间 延迟结果的Spring长轮询

  • 我想通过java代码将-noverify设置为VM参数。我在网上找不到任何资源来帮助解决这个问题。 如果我使用< code>System.setProperty(..,..),我设置什么作为值或者键呢? 我已经尝试使用,但这似乎不起作用。 注意:这只是为了运行一些测试用例。由于这个问题,我正在关闭字节码验证-链接 非常感谢。

  • 我在一个Python项目中工作,我想为该项目定义存储virtualenv的路径。 我在工作区设置中有linting设置,但是这是签入到我的git存储库中的,并且在项目中的任何协作者中都是常见的,因此我认为在工作区设置中引用我个人为该项目保留virtualenv的位置是没有意义的。 由于它是一个特定于项目的virtualenv,在我的用户设置中引用它也没有意义。 是否有一种方法可以为这个项目存储到v