2012-09-13 16 views
2

我正在使用java.util.concurrent.ExecutorService.submit(Callable<T>)来调用返回void的Callable任务。我们之所以选择Callable而不是Runnable是为了利用Callable引发检查异常的能力,因为我们没有真正的结果。移动到Findbugs 2.0后,调用提交被标记为违规,因为我们忽略了异常的返回值。只是想检查这是否是一个公平的违规行为 - 因为无论如何我都不想检查返回值。Findbugs 2.0 ThreadPoolExecutor.submit for void callable忽略异常返回值

在此先感谢!

回答

3

如果您使用Callable是因为它可以引发异常,那么您似乎希望抓取并检查Future以查看是否引发异常。否则,你正在设计的代码抛出一个检查的异常,但从来没有处理它。

+0

啊,我笨!谢谢@ john-b – Kilokahn