- 含まれているクラス:
ScopedValuePREVIEW<T>
Carrier
は、JavaプラットフォームのプレビューAPIです。
Carrier
を使用してマッピングを蓄積し、マッピング内のすべてのスコープ値を使用して操作(Runnable
またはCallable
)を値にバインドして実行できるようにします。 次の例では、k1
が(またはリバウンド)をv1
にバインドし、k2
が(またはリバウンド)をv2
にバインドした操作を実行します。
Carrier
は不変でスレッド・セーフです。 where
メソッドは、新しいCarrier
オブジェクトを返し、既存のマッピングを変更しません。
特に指定しないかぎり、このクラスのメソッドにnull
引数を渡すと、NullPointerException
がスローされます。
- 導入されたバージョン:
- 21
-
メソッドのサマリー
修飾子と型メソッド説明<R> R
このマッピングの各スコープ値を使用して、現在のスレッドの値にバインドされた値を返す操作をコールします。<T> T
get
(ScopedValuePREVIEW<T> key) このマッピングでScopedValue
PREVIEWの値を返します。<R> R
このマッピング内の各スコープ値が現在のスレッド内の値にバインドされた結果のサプライヤを起動します。void
このマッピング内の各スコープ値を現在のスレッド内の値にバインドした操作を実行します。where
(ScopedValuePREVIEW<T> key, T value) このキャリアからのマッピングに加えて、key
からvalue
への新しいマッピングを含む新しいCarrier
を返します。
-
メソッドの詳細
-
where
public <T> ScopedValue.CarrierPREVIEW where(ScopedValuePREVIEW<T> key, T value) このキャリアからのマッピングに加えて、key
からvalue
への新しいマッピングを含む新しいCarrier
を返します。 このキャリアにスコープ値key
のマッピングがすでにある場合は、新しいvalue
にマップされます。 現在のキャリアは不変であるため、このメソッドでは変更されません。- 型パラメータ:
T
- 値の型- パラメータ:
key
-ScopedValue
キーvalue
- 値はnull
です- 戻り値:
- このキャリアからのマッピングと新しいマッピングを含む新しい
Carrier
-
get
public <T> T get(ScopedValuePREVIEW<T> key) このマッピングでScopedValue
PREVIEWの値を返します。- 型パラメータ:
T
- 値の型- パラメータ:
key
-ScopedValue
キー- 戻り値:
- 値
- 例外:
NoSuchElementException
- キーがこのマッピングに存在しない場合
-
call
このマッピングの各スコープ値を使用して、現在のスレッドの値にバインドされた値を返す操作をコールします。 操作が(通常または例外あり)を完了すると、マッピング内の各スコープ値は、現在のスレッドでバインドされていない値に戻されるか、以前バインドされた場合は以前の値に戻されます。op
が例外ありで完了すると、このメソッドによって伝播されます。スコープ値は、「構造化方式」で使用することを目的としています。 操作によって直接または間接的に呼び出されたコードで
StructuredTaskScope
PREVIEWが作成するが、それを「閉じ」PREVIEWない場合、操作が完了すると(通常または例外あり) 「構造違反」として検出されます。 その場合、StructuredTaskScope
の基礎となる構造が閉じられ、StructureViolationException
PREVIEWがスローされます。- 型パラメータ:
R
- 操作の結果のタイプ- パラメータ:
op
- 実行する操作- 戻り値:
- 結果
- 例外:
StructureViolationExceptionPREVIEW
- 構造違反が検出された場合Exception
-op
が例外ありで完了した場合- 関連項目:
-
get
public <R> R get(Supplier<? extends R> op) このマッピング内の各スコープ値が現在のスレッド内の値にバインドされた結果のサプライヤを起動します。 操作が(通常または例外あり)を完了すると、マッピング内の各スコープ値は、現在のスレッドでバインドされていない値に戻されるか、以前バインドされた場合は以前の値に戻されます。op
が例外ありで完了すると、このメソッドによって伝播されます。スコープ値は、「構造化方式」で使用することを目的としています。 操作によって直接または間接的に呼び出されたコードで
StructuredTaskScope
PREVIEWが作成するが、それを「閉じ」PREVIEWない場合、操作が完了すると(通常または例外あり) 「構造違反」として検出されます。 その場合、StructuredTaskScope
の基礎となる構造が閉じられ、StructureViolationException
PREVIEWがスローされます。- 型パラメータ:
R
- 操作の結果のタイプ- パラメータ:
op
- 実行する操作- 戻り値:
- 結果
- 例外:
StructureViolationExceptionPREVIEW
- 構造違反が検出された場合- 関連項目:
-
run
public void run(Runnable op) このマッピング内の各スコープ値を現在のスレッド内の値にバインドした操作を実行します。 操作が(通常または例外あり)を完了すると、マッピング内の各スコープ値は、現在のスレッドでバインドされていない値に戻されるか、以前バインドされた場合は以前の値に戻されます。op
が例外ありで完了すると、このメソッドによって伝播されます。スコープ値は、「構造化方式」で使用することを目的としています。 操作によって直接または間接的に呼び出されたコードで
StructuredTaskScope
PREVIEWが作成するが、それを「閉じ」PREVIEWない場合、操作が完了すると(通常または例外あり) 「構造違反」として検出されます。 その場合、StructuredTaskScope
の基礎となる構造が閉じられ、StructureViolationException
PREVIEWがスローされます。- パラメータ:
op
- 実行する操作- 例外:
StructureViolationExceptionPREVIEW
- 構造違反が検出された場合- 関連項目:
-
Carrier
を使用できます。