プログラムの実行中に、いくつかのスレッドが開始されます。スレッドの量は、ユーザー定義の設定によって異なりますが、すべて同じメソッドを異なる変数で実行しています。複数のスレッドでJavaで完了するまで待ちます
状況によっては、実行中にクリーンアップが必要な場合があります。これはスレッドのすべてを停止していますが、すぐに停止しないようにするため、チェックする変数を設定します。問題は、スレッドが停止するまでに1/2秒までかかる可能性があるということです。ただし、クリーンアップを続行する前にすべてのスレッドが停止していることを確認する必要があります。クリーンアップは別のスレッドから実行されるので、技術的には、他のスレッドが終了するまでこのスレッドが必要です。
私はこれを行ういくつかの方法を考えましたが、それらはすべて過度に複雑であるようです。私はスレッドのグループが完了するのを待つことができるいくつかの方法があることを願っていました。このようなことは何ですか?
ありがとうございました。
がfor (Thread thread : threads) {
thread.join();
}
(あなたがInterruptedException
で何かをする必要があります、あなたはうまく物事がうまくいかない場合には、タイムアウトを提供することもできますが、それは基本だ:
[スレッドのセットが完了するのを待つ方法](http://stackoverflow.com/questions/) 1252190/how-to-for-threads-to-completion-for-threads-to-completion) –