モジュール jdk.management.resource
パッケージ jdk.management.resource

インタフェースResourceApprover

  • 関数型インタフェース:
    これは関数型インタフェースなので、ラムダ式またはメソッド参照の代入先として使用できます。


    @FunctionalInterface
    public interface ResourceApprover
    ResourceApproverは、リソース・リクエストを承認するためのコールバックです。 ResourceMeterは割当てまたは解放のソースです。 使用率を制限するには、承認者が戻りを遅らせることもきますが、これは過度に行わないようにしてください。 requestの呼出し中はロックも同期も使用できないため、他のスレッドからのリクエストによって、メーターの値が非同期に変更されることがあります。
    導入されたバージョン:
    8u40
    関連項目:
    NotifyingMeter
    • メソッドの詳細

      • request

        long request​(ResourceMeter meter,
                     long previous,
                     long amount,
                     ResourceId id)
        ResourceMeteからリソースの割当てまたは解放の承認をリクエストします。 割当ての場合、量はゼロ(0)よりも大きく、リクエストの前にメーターに適用されるので、量はすぐに表示されます。 リソースの解放では、量はゼロ(0)よりも小さく、リソースが処理途中で解放されないように、量はリクエストの後に適用されます。

        ResourceApproverがリクエストを拒否する場合、ResourceRequestDeniedExceptionがスローされます。

        パラメータ:
        meter - ResourceMeter
        previous - リクエスト前のメーターの値
        amount - リクエスト(正)または解放(負)するリソース量
        id - リクエストを行うResourceId (nullも可)
        戻り値:
        消費(正)または解放(負)される量、またはリクエストが拒否される場合はゼロ(0)
        例外:
        ResourceRequestDeniedException - リクエストを拒否する必要があることを示す場合にスローされます。