1. ホーム
  2. java

[解決済み] Javaにおけるmutexとsemaphoreとは?主な違いは何ですか?

2022-05-13 08:03:17

質問

Javaにおけるmutexとsemaphoreとは何ですか?主な違いは何ですか?

どのように解決するのですか?

セマフォはカウント可能ですが、ミューテックスは1までしかカウントできません。

クライアントの接続を受け付けるスレッドが稼働しているとします。このスレッドは同時に10人のクライアントを処理することができます。そして、新しいクライアントが来るたびに、セマフォが10になるまで設定します。セマフォのフラグが10になると、そのスレッドは新しい接続を受け付けません。

Mutexは通常、何かを保護するために使われます。例えば、10人のクライアントがシステムの複数の部分にアクセスできるとします。その場合、あるクライアントがそのサブシステムに接続すると、他の誰もアクセスできないように、ミューテックスでシステムの一部を保護することができます。この目的にはセマフォも使えます。ミューテックスとは 相互排他的セマフォです。 .