java-如何在有时间限制的情况下停止进程
作者:互联网
我认为该主题可能不够准确,但是我真的不知道如何以非常简短的方式描述它.
我想做的如下:
我有一个进程在运行一些分析(使用Java)并尝试提供返回值,但是整个分析都有时间限制,例如10秒
如果分析结果在10秒钟之内,
返回结果;
其他,
达到10s时加倍,停止过程并返回虚拟值
我是该领域的新手,欢迎任何建议.
解决方法:
您可以使用FutureTask创建作业并在特定时间内请求结果(使用带超时的get()).如果违反了该时间范围,那么您将获得一个例外.
此时,您可以将参数设置为true来调用cancel()方法,以强制中断并取消基础任务.
Object result = DUMMY;
try {
result = futureTask.get(5, TimeOut.SECONDS);
}
catch (TimeoutException e) {
futureTask.cancel(true);
}
标签:constraints,event-handling,listener,java,time 来源: https://codeday.me/bug/20191107/2003353.html