3
公衆詮釋drainPermits():Semaphore.drainPermits()有什麼意義?
獲取並返回立即可用的所有許可。返回:獲得的許可證數量。
爲什麼有人想要獲得,然後立即釋放信號量的所有可用許可?如果他們想查看可用許可證的數量,爲什麼不使用Semaphore.availablePermits()
?
公衆詮釋drainPermits():Semaphore.drainPermits()有什麼意義?
獲取並返回立即可用的所有許可。返回:獲得的許可證數量。
爲什麼有人想要獲得,然後立即釋放信號量的所有可用許可?如果他們想查看可用許可證的數量,爲什麼不使用Semaphore.availablePermits()
?
它不釋放它們。它獲得了全部,這就是全部:
Semaphore s = new Semaphore(10);
System.out.println(s.availablePermits()); // 10
s.drainPermits();
System.out.println(s.availablePermits()); // 0