私は、一連の操作がロックしている ReentrantLock を持っていnew ReentrantLock(true)
ます。スレッドがロックに「割り込み」、解放された後、他のスレッドの前にそれを取得する方法はありますか?
timed と untimed のさまざまな組み合わせを検討しましたtryLock
。
tryLock()
すでにロックが解除されていて、スレッドが待機している場合、ロックに割り込みますが、ロックが使用可能になるまで待機しません。- タイムアウトと同じ方法が公平です。
- 最初にロックされている場合、タイムアウトベースの tryLock は公平なスケジューリングにフォールバックするため、両方を組み合わせても機能しません。
それとも私が間違っていますか?