如果一個不公平的信號量許可證不是即時可用的,tryAcquire(long timeout, TimeUnit unit)
會阻止,直到許可證可用(即收益執行),或者它會旋轉,直到許可證可用?將Semaphore.tryAcquire(...)阻止或旋轉,直到許可證可用?
如果這個調用旋轉並且一個系統有一堆信號量,那麼系統是否會冒着大量自旋信號量的風險?
如果一個不公平的信號量許可證不是即時可用的,tryAcquire(long timeout, TimeUnit unit)
會阻止,直到許可證可用(即收益執行),或者它會旋轉,直到許可證可用?將Semaphore.tryAcquire(...)阻止或旋轉,直到許可證可用?
如果這個調用旋轉並且一個系統有一堆信號量,那麼系統是否會冒着大量自旋信號量的風險?
Java文檔[tryAquire](http://docs.oracle.com/javase/1.5.0/docs/api/java/util/concurrent/Semaphore.html#tryAcquire%28int,%20long,%20java.util .concurrent.TimeUnit%29)是自解釋性的 –
該死的,我必須讀錯了tryAquire JavaDoc ......但正如它解釋的,它不會旋轉,但會產生執行。 – Cowboy