クラス UpperBound
java.lang.ObjectSE
org.springframework.integration.util.UpperBound
メッセージのバッファ(QueueChannel や MessageStore など)で使用されることにより、潜在的に無制限の上限を作成できるようにするセマフォの薄いラッパー。
- 導入:
- 2.0
- 作成者:
- Mark Fisher, Iwein Fuld, Artem Bilan, Gary Russell
コンストラクター概要
コンストラクター方法の概要
修飾子と型メソッド説明intvoidrelease()基になるセマフォのロックを 1 つ解放します。voidrelease(int permits) 基になるセマフォのいくつかのロックを解放します。toString()booleantryAcquire(long timeoutInMilliseconds) この UpperBound が制限されている場合は、基になるセマフォから許可を取得し、指定されたタイムアウト内に成功した場合は true を返します。
コンストラクターの詳細
UpperBound
public UpperBound(int capacity) 指定された容量で UpperBound を作成します。指定された容量が 1 未満の場合、無限の UpperBound が作成されます。- パラメーター:
capacity- 容量。
方法の詳細
availablePermits
public int availablePermits()tryAcquire
public boolean tryAcquire(long timeoutInMilliseconds) この UpperBound が制限されている場合は、基になるセマフォから許可を取得し、指定されたタイムアウト内に成功した場合は true を返します。タイムアウトが 0 未満の場合、無期限にブロックされます。- パラメーター:
timeoutInMilliseconds- 許可が得られるまで待つ時間。- 戻り値:
- 許可が取得された場合は true。
release
public void release()基になるセマフォのロックを 1 つ解放します。これは通常、ロックを取得したのと同じスレッドではなく、メッセージを取得したスレッドによって実行されます。release
public void release(int permits) 基になるセマフォのいくつかのロックを解放します。これは通常、ロックを取得したのと同じスレッドではなく、メッセージを取得したスレッドによって実行されます。- パラメーター:
permits- 解放する許可の数。
toString