モジュール java.base
パッケージ java.lang

クラスInheritableThreadLocal<T>

java.lang.Object
java.lang.ThreadLocal<T>
java.lang.InheritableThreadLocal<T>
型パラメータ:
T - 継承可能なスレッドのローカル値の型

public class InheritableThreadLocal<T> extends ThreadLocal<T>
このクラスは、親スレッドから子スレッドへの値の継承を提供するためにThreadLocalを拡張: 子スレッドが作成されると、子は、親に値が設定されているすべての継承可能なスレッド・ローカル変数の初期値を受け取ります。 通常、子の値は親の値と同じになりますが、このクラスのchildValueメソッドをオーバーライドすることで、子の値を親の任意の関数にすることができます。

変数として保持されるスレッドごとの属性(ユーザーID、トランザクションIDなど)を、作成されるすべての子スレッドに自動的に転送する必要がある場合には、継承可能なスレッド・ローカル変数が通常のスレッド・ローカル変数よりも優先的に使われます。

ノート: 新しいthreadの作成中に、継承可能なスレッド・ローカル変数の初期値をopt outが受け取ることができます。

導入されたバージョン:
1.2
関連項目: