在ExecutorService 中同步執行緒完成
使用ExecutorService 並發執行任務時,監控任務進度並確保任務成功完成變得至關重要。本文探討了在此上下文中有效處理線程同步的各種方法。
一個關鍵方法涉及利用 shutdown() 和awaitTermination() 方法。透過呼叫 shutdown(),ExecutorService 程序收到訊號以開始有序終止。隨後,awaitTermination() 可用於耐心等待所有排隊任務在指定時間範圍內或無限期完成。這可確保在繼續後續操作之前沒有任何任務仍在進行中。
ExecutorService taskExecutor = Executors.newFixedThreadPool(4); while(...) { taskExecutor.execute(new MyTask()); } taskExecutor.shutdown(); try { taskExecutor.awaitTermination(Long.MAX_VALUE, TimeUnit.NANOSECONDS); } catch (InterruptedException e) { ... }
以上是如何在Java的ExecutorService中同步管理執行緒完成?的詳細內容。更多資訊請關注PHP中文網其他相關文章!