如果自己开线程我通常这么写
t.join(2000)
t..interrupt();
使用 ThreadPoolExecutor 来执行任务后,不知道如何强制停止已经超时的任务了。
如果自己开线程我通常这么写
t.join(2000)
t..interrupt();
使用 ThreadPoolExecutor 来执行任务后,不知道如何强制停止已经超时的任务了。
8 回答6.4k 阅读
1 回答4.2k 阅读✓ 已解决
3 回答2.3k 阅读✓ 已解决
2 回答3.2k 阅读
2 回答3.9k 阅读
3 回答1.7k 阅读✓ 已解决
1 回答2k 阅读✓ 已解决
有一种方案是使用FutureTask,里面有一个get方法,带timeout参数,如果执行时间超过timeout,抛出TimeoutException,可以catch一下进行处理