我有一个间歇性失败的测试,当未来被取消时,在可调用的 finally 块执行之前,future.get 调用正在返回。这是基本的工作流程:
future.cancel(true);
我看到InterrupedException扔在Callable
主线程CancellationException从future.get调用中捕获
现在Callable来电了finally。
测试在我的笔记本上总是成功的,而在我们的构建服务器上大部分时间都失败了。我的笔记本和构建服务器都在运行 OpenJDK 1.7。有任何想法吗?