JavaのセマフォHomeTOCJavaのセマフォJava1概要このクイックチュートリアルでは、Javaのセマフォとミューテックスの基本を探ります。セマフォを使用して、特定のリソースにアクセスする同時スレッドの数を制限できます。次の例では、システム内のユーザー数を制限するための単純なログインキューを実装します。}}次の方法を使用したことに注目してください。現在利用可能な許可の数を返す私たちのログインキューをテストするために、私たちは最初に制限に到達しようとし、次のログインの試みがブロックされるかどうかチェックします。assertFalse(loginQueue.tryLogin());}次に、ログアウト後に使用可能なスロットがあるかどうかを確認します。Commonsについて説明します。単純なセマフォとしていくつかの許可を許可しますが、一定期間内に、この期間の後にリセットされ、すべての許可が解放されます。使用して単純な遅延キューを構築できます。}}時間として1秒の遅延キューを使用し、1秒以内にすべてのスロットを使用した後は、使用できないはずです。assertFalse(delayQueue.tryAdd());}しかししばらくの間スリープした後、セマフォは許可をリセットして解放する必要があります。assertTrue(delayQueue.tryAdd());}4セマフォ対ミューテックスミューテックスはバイナリセマフォと同じように振る舞います、相互排除を実装するためにそれを使うことができます。次の例では、単純なバイナリセマフォを使用してカウンタを構築します。assertTrue(counter.hasQueuedThreads());}待つと、すべてのスレッドがカウンタにアクセスし、キューにスレッドは残りません。counter.getCount());}5結論この記事では、Javaのセマフォーの基本を探りました。GitHub]から入手できます。