パッケージ org.springframework.util
クラス ConcurrencyThrottleSupport
java.lang.ObjectSE
org.springframework.util.ConcurrencyThrottleSupport
- 実装されたすべてのインターフェース:
SerializableSE
- 既知の直属サブクラス
ConcurrencyThrottleInterceptor
特定のリソースへの同時アクセスを調整するためのサポートクラス。
基本クラスとして使用するように設計されており、サブクラスはワークフローの適切なポイントで beforeAccess()
メソッドと afterAccess()
メソッドを呼び出します。afterAccess
は通常、finally
ブロックで呼び出される必要があることに注意してください。
このサポートクラスのデフォルトの同時実行制限は -1(「無制限の同時実行」)です。サブクラスはこのデフォルトをオーバーライドできます。使用している具象クラスの javadoc を確認してください。
- 導入:
- 1.2.5
- 作成者:
- Juergen Hoeller
- 関連事項:
フィールドのサマリー
フィールド修飾子と型フィールド説明protected Log
直列化を最適化するための一時的。static final int
並行性を「オフ」に切り替える: つまり、同時呼び出しを許可しません。static final int
任意の数の同時呼び出しを許可します。つまり、同時実行を抑制しません。コンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明protected void
具象サブクラスのメイン実行ロジックの後に呼び出されます。protected void
具象サブクラスのメイン実行ロジックの前に呼び出されます。int
許可される同時アクセス試行の最大数を返します。boolean
このスロットルが現在アクティブかどうかを返します。void
setConcurrencyLimit
(int concurrencyLimit) 許可される同時アクセス試行の最大数を設定します。
フィールドの詳細
コンストラクターの詳細
ConcurrencyThrottleSupport
public ConcurrencyThrottleSupport()
メソッドの詳細
setConcurrencyLimit
public void setConcurrencyLimit(int concurrencyLimit) 許可される同時アクセス試行の最大数を設定します。デフォルトの -1 は、同時実行制限がまったくないことを示します。原則として、この制限は実行時に変更できますが、通常は構成時間の設定として設計されています。
NOTE: 実行時に -1 と具体的な制限を切り替えないでください。同時実行数の一貫性が失われます: 制限値 -1 は、同時実行カウントを完全にオフにします。
getConcurrencyLimit
public int getConcurrencyLimit()許可される同時アクセス試行の最大数を返します。isThrottleActive
public boolean isThrottleActive()このスロットルが現在アクティブかどうかを返します。- 戻り値:
- このインスタンスの同時実行制限がアクティブな場合、
true
- 関連事項:
beforeAccess
protected void beforeAccess()具象サブクラスのメイン実行ロジックの前に呼び出されます。この実装では、同時実行性スロットルが適用されます。
- 関連事項:
afterAccess
protected void afterAccess()具象サブクラスのメイン実行ロジックの後に呼び出されます。- 関連事項: