ホームページ  >  記事  >  Java  >  Java CountDownLatch による非同期コールバックのサンプル コード共有が完了

Java CountDownLatch による非同期コールバックのサンプル コード共有が完了

黄舟
黄舟オリジナル
2017-03-23 10:29:431718ブラウズ

この記事では、Java CountDownLatch によって完成される非同期コールバック インスタンスの詳細な説明に関する関連情報を主に紹介します。必要な場合は、以下を追加してください。

1. main メソッドを使用してスレッドを開始する場合。このメソッドの呼び出しには問題はありません。JDK は、メイン メソッドが終了する前にすべてのスレッドを終了します。ただし、メイン メソッドが非同期タスク (JUnit、Spring、Tomcat など) のイニシエーターではない場合、ランチャーは、開始されるとスレッドの制御を失います。たとえば、JUnit では、laucher がタスクを送信した後、すべてのプロセスが完了したとみなされ、他のスレッドは強制的に終了されます。

2. このため、環境に応じて適切な Executor を使用してください。たとえば、Web 環境では、Web アプリケーションが非同期タスクの

ライフサイクル全体を確実に制御できるように、Tomcat (または Spring) によって管理されるスレッド プールをエグゼキューターとして使用する必要があります。 JDK スレッド プールを選択するとどうなるでしょうか?タスクは正常に実行される可能性がありますが、Web アプリを終了すると、実行中の非同期スレッドが正常に強制終了されず、メモリ リークやその他の予期せぬ結果が発生します。

以上がJava CountDownLatch による非同期コールバックのサンプル コード共有が完了の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。