執行人服務有以下方法 -是否有來自呼叫提交執行服務的可運行實例獲得Future對象上使用get一個用例
Future<?> submit(Runnable task);
現在可運行不同Callabe不返回任何東西(它的返回類型爲void )。所以調用get未來的對象給我null爲一個Runnable任務提交。
ExecutorService service = null;
try {
service = Executors.newSingleThreadExecutor();
Future<?> result = service.submit(() -> System.out.println("My 1st ThreadId : " + Thread.currentThread().getId()));
System.out.println(result.get());
} finally {
if(service != null) service.shutdown();
}
給
My 1st ThreadId : 10
null
這可能會是一個阻塞調用,如果Runnable任務還沒有結束返回null了。想知道是否有一個實際的使用案例,通過調用提交給執行器服務返回可運行任務返回的未來對象。