クラス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
- 関連項目:
-
コンストラクタのサマリー
コンストラクタ -
メソッドのサマリー
修飾子と型メソッド説明protected TchildValue(T parentValue) この継承可能なスレッド・ローカル変数の初期値を、子スレッドの作成時に親の値に対する関数として計算します。クラスで宣言されたメソッド ThreadLocal
get, initialValue, remove, set, withInitial修飾子と型メソッド説明get()このスレッド・ローカル変数の現行スレッドのコピー内の値を返します。protected Tこのスレッド・ローカル変数に対する現在のスレッドの「初期値」を返します。voidremove()このスレッド・ローカル変数に対する現在のスレッドの値を削除します。voidこのスレッド・ローカル変数の現在のスレッドのコピーを指定された値に設定します。static <S> ThreadLocal<S> withInitial(Supplier<? extends S> supplier) スレッド・ローカル変数を作成します。クラスオブジェクトで宣言されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait修飾子と型メソッド説明protected Objectclone()このオブジェクトのコピーを作成して、返します。booleanこのオブジェクトと他のオブジェクトが等しいかどうかを示します。protected voidfinalize()削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。最終決定は非推奨であり、将来のリリースで削除される可能性があります。final Class<?> getClass()このObjectの実行時クラスを返します。inthashCode()このオブジェクトに対するハッシュ・コード値を返します。final voidnotify()このオブジェクトのモニターで待機中のスレッドを1つ再開します。final voidこのオブジェクトのモニターで待機中のすべてのスレッドを再開します。toString()オブジェクトの文字列表現を返します。final voidwait()現在のスレッドが目覚めるまで待機します。通常、notifiedまたはinterruptedです。final voidwait(long timeoutMillis) 現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。final voidwait(long timeoutMillis, int nanos) 現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
-
コンストラクタの詳細
-
InheritableThreadLocal
public InheritableThreadLocal()継承可能なスレッド・ローカル変数を作成します。
-
-
メソッドの詳細
-
childValue
-