0
我希望能夠在完成其任務後立即加入每個線程。在下面的代碼示例中,只要每個線程按列表中的順序運行,主線程就會等待,只有下一個線程纔會被加入。Java。按照完成順序加入線程,並在每次加入後運行一種鉤子
List<Thread> threads = new ArrayList<>();
threads.add(new Thread(new Worker(), "T1"));
threads.add(new Thread(new Worker(), "T2"));
threads.add(new Thread(new Worker(), "T3"));
threads.forEach(Thread::start);
threads.forEach(thread -> {
try {
thread.join();
someHook();
} catch (InterruptedException e) {
e.printStackTrace();
}
});
你的問題是什麼? – GhostCat
使用'CompletionService'。 –
你想要做的是更好地完成可組合期貨。 – Kraylog