- java.lang.Object
-
- jdk.management.resource.SimpleMeter
-
- jdk.management.resource.NotifyingMeter
-
- jdk.management.resource.ThrottledMeter
-
- すべての実装されたインタフェース:
ResourceMeter
,ResourceRequest
@Deprecated(since="10", forRemoval=true) public class ThrottledMeter extends NotifyingMeter
削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。リソース管理は、置き換えのない削除のために推奨されていません。ThrottledMeterでは、帯域幅制限、オプションの親からのリクエストおよび割当てに対する承認者のコールバックを指定します。 レートはスロットル制限で制限し、いつでも設定できます。 1秒当たりのレートは、毎秒承認可能な量です。 毎秒使用されなかった量は、最大で1秒になるまで累積されます。- 導入されたバージョン:
- 8u40
-
-
メソッドのサマリー
すべてのメソッド staticメソッド インスタンス・メソッド 具象メソッド 非推奨のメソッド 修飾子と型 メソッド 説明 static ThrottledMeter
create(ResourceType type, long ratePerSec, ResourceApprover approver)
削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。スロットル・レートと承認者を持つ新しいメーターを作成します。static ThrottledMeter
create(ResourceType type, long ratePerSec, ResourceRequest parent, ResourceApprover approver)
削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。スロットル・レート、親および承認者を持つ新しいメーターを作成します。static ThrottledMeter
create(ResourceType type, ResourceRequest parent, ResourceApprover approver)
削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。無制限のレート、親および承認者を持つ新しいメーターを作成します。long
getCurrentRate()
削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。現在の推定レート(量/秒)を返します。long
getRatePerSec()
削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。現在のスロットル・レート(/秒)を返します。long
setRatePerSec(long ratePerSec)
削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。スロットル・レート(/秒)を設定します。long
validate(long previous, long amount, ResourceId id)
削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。量を検証します。-
クラス jdk.management.resource.NotifyingMeterで宣言されたメソッド
create、getApprover、getGranularity、setGranularity
-
インタフェース jdk.management.resource.ResourceMeterで宣言されたメソッド
getAllocated, getType, getValue
-
-
-
-
メソッドの詳細
-
create
public static ThrottledMeter create(ResourceType type, long ratePerSec, ResourceApprover approver)
削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。スロットル・レートと承認者を持つ新しいメーターを作成します。- パラメータ:
type
- ResourceTyperatePerSec
- 許可されたスロットル・レート(バイト/秒)。ゼロ(0)よりも大きい必要がありますapprover
- 通知対象のResourceApprover (null
も可)- 戻り値:
- 新しいThrottledMeter
- 例外:
IllegalArgumentException
- ratePerSecがゼロ(0)以下の場合
-
create
public static ThrottledMeter create(ResourceType type, ResourceRequest parent, ResourceApprover approver)
削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。無制限のレート、親および承認者を持つ新しいメーターを作成します。- パラメータ:
type
- ResourceTypeparent
- リクエスト元のResourceRequest (null
も可)approver
- 通知対象のResourceApprover (null
も可)- 戻り値:
- 新しいThrottledMeter
- 例外:
IllegalArgumentException
- ratePerSecがゼロ(0)以下の場合
-
create
public static ThrottledMeter create(ResourceType type, long ratePerSec, ResourceRequest parent, ResourceApprover approver)
削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。スロットル・レート、親および承認者を持つ新しいメーターを作成します。- パラメータ:
type
- ResourceTyperatePerSec
- 許可されたスロットル・レート(バイト/秒)。ゼロ(0)よりも大きい必要がありますparent
- リクエスト元のResourceRequest (null
も可)approver
- 通知対象のResourceApprover (null
も可)- 戻り値:
- 新しいThrottledMeter
- 例外:
IllegalArgumentException
- ratePerSecがゼロ(0)以下の場合
-
validate
public long validate(long previous, long amount, ResourceId id)
削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。量を検証します。 量を返す場合は、そのまま返します。 スロットリングは、トークン・バケットのようなアルゴリズムによって実現します。割当て量
には、リクエストを満たすためにただちに処理される量を超える容量が保持されます。 最大割当て量は、現在の1秒当たりのレートで2秒分の量です。 リクエストによって要求された量分ずつ割当て量が減少します。 割当て量が最初から正の値である場合、リクエストはただちに処理されます。 割当て量が負の値の場合、割当て量は時間の経過に応じて補充されるので、正の値に戻るまで待機します。 複数のスレッドが割当て量をめぐって競合している場合、通常のスレッド・スケジュールと同期化プリミティブによって順序が左右されます。InterruptedExceptionが発生すると、ゼロ(0)が返されて、検証に失敗します。
リソース使用のスロットリングは、基礎となるリソース実装から分離されており、リソース使用率は変更ずに、リソース使用の開始のみを遅らせます。
- オーバーライド:
validate
、クラス:NotifyingMeter
- パラメータ:
amount
- リクエストされた量id
- リソース・インスタンスのResourceId(null
も可)previous
- 以前のメーター値- 戻り値:
- 承認された値
-
getCurrentRate
public final long getCurrentRate()
削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。現在の推定レート(量/秒)を返します。- 戻り値:
- 現在の推定レート(量/秒)
-
getRatePerSec
public final long getRatePerSec()
削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。現在のスロットル・レート(/秒)を返します。- 戻り値:
- 現在のスロットル・レート(/秒)
-
setRatePerSec
public final long setRatePerSec(long ratePerSec)
削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。スロットル・レート(/秒)を設定します。- パラメータ:
ratePerSec
- レート/秒。ゼロ(0)よりも大きい必要があります- 戻り値:
- 以前のスロットル・レート(/秒)
- 例外:
IllegalArgumentException
- ratePerSecがゼロ(0)以下の場合
-
-