1
我正在使用ScheduledExecutorService.scheduleAtFixedRate(taskA ....)來完成一些任務。runable.run()不能拋出異常
我希望當taskA引發一個無顯示的異常時整個過程失敗。但是,taskA必須是可運行的,並且其方法run()
的簽名不會引發任何檢查的異常。
有沒有人知道如何做到這一點?
我正在使用ScheduledExecutorService.scheduleAtFixedRate(taskA ....)來完成一些任務。runable.run()不能拋出異常
我希望當taskA引發一個無顯示的異常時整個過程失敗。但是,taskA必須是可運行的,並且其方法run()
的簽名不會引發任何檢查的異常。
有沒有人知道如何做到這一點?
你的問題的解決方案是使用Callable
接口,可自從Java 5.0
Callable
作品就像Runnable
,但它可以讓你返回一個值,以及從子線程拋出Exception
。
http://docs.oracle.com/javase/1.5.0/docs/api/java/util/concurrent/Callable.html
希望我可以多次投票答覆此答案! –