Javaコンカレントコンポーネント3セマフォ

使用シナリオ:一般的に、限られたリソースを使用し、同時スレッドの最大数を制限するために使用されます。
  • セマフォの最大数を設定します。Semaphore semaphore = new Semaphore(3);
  • セマフォを取得します。
    • semaphore.acquire(); //セマフォを取得
    • semaphore.acquire(3); //複数のライセンスを取得
    • semaphore.tryAcquire(3); //複数のライセンスを取得しようとします
    • semaphore.tryAcquire(5、TimeUnit.SECONDS); //指定された時間内に権限を取得します
  • セマフォの解放:semaphore.release();
默认情况下,信号量是非公平性的(先等待先执行为公平。类似于买东西的时候大家排队付款,先来的先付款是公平的。但是这时候有人插队,那就是非公平的)

おすすめ

転載: www.cnblogs.com/Courage129/p/12726370.html