私は次のようなエグゼキューターサービスを持っています:
ExecutorService exec = Executors.newFixedThreadPool(4);
for(int i=0; i<4;i++) {
Consumer consumer = new Consumer();
exec.execute(new ConsumerstartUpThread(consumer));
}
ConsumerStartUpThread
runnable を実装しており、その run メソッドには非常に多くの機能があり、他のいくつかの API を呼び出す必要があります。コードをデバッグ モードで実行すると、タスクが完了します。通常どおり実行すると、タスクが不完全になり、スレッドが終了します。すべてのタスクが完了するまでスレッドが待機するということではありませんか? タスクを完了せずに終了するのはなぜですか?