で固定サイズのスレッドプールを作成しExecutors.newFixedThreadPool(2)
、10個Runnable
のオブジェクトを実行しました。ブレークポイントを設定し、実行をトレースしました。ただし、fixedSizeThreadPool.awaitTermination()
すべてのタスクが完了しても続行できません。
基本的に:
ExecutorService fixedThreadPool = Executors.newFixedThreadPool(2);
for (int i = 0; i < 10; ++i) {
fixedSizeThreadPool.execute(myRunables[i]);
}
try {
fixedSizeThreadPool.awaitTermination(timeout, timeoutUnits);
} catch (Exception e) { }
System.out.println("done!");
しかし、これは常に行き詰まりawaitTermination
ます。どうしたの?