我使用java的Future類來執行任務,但是如果任務完成,方法isDone返回true。完成可能是由於正常終止,例外或取消 - 在所有這些情況下,此方法將返回true。我如何知道如何使用java的Future類來完成任務
有沒有辦法知道它是因爲異常還是因爲它成功完成而結束?
我使用java的Future類來執行任務,但是如果任務完成,方法isDone返回true。完成可能是由於正常終止,例外或取消 - 在所有這些情況下,此方法將返回true。我如何知道如何使用java的Future類來完成任務
有沒有辦法知道它是因爲異常還是因爲它成功完成而結束?
您可以簡單地嘗試檢索值 - get
方法然後引發異常或返回值。
當你調用的Future.get()方法中,有4個可能的結果:
我在我的代碼中使用它,唯一的辦法,你可以計算出,如果真的成功地完成了任務,是通過使用get()
你說的沒錯,這是一個更爲更好的方法。 +1 –
我們如何確定線程是否正在執行Runnable或Callable?未來會提供這些信息嗎? – Abidi