java.lang
クラス InheritableThreadLocal
java.lang.Object
java.lang.ThreadLocal
java.lang.InheritableThreadLocal
public class InheritableThreadLocal
- extends ThreadLocal
このクラスは、親スレッドから子スレッドへの値の継承を提供するために、ThreadLocal を拡張します。子スレッドの作成時に、子は、親が値を保持する継承可能なスレッドローカル変数すべての初期値を受け取ります。通常、子の値は親の値と同じです。 しかし、このクラスの childValue メソッドをオーバーライドすれば、子の値を親の値に対する任意の関数にできます。
変数として保持されるスレッドごとの属性 (ユーザー ID、トランザクション ID など) を、作成されるすべての子スレッドに自動的に転送する必要がある場合には、継承可能なスレッドローカル変数が通常のスレッドローカル変数よりも優先的に使われます。
- 導入されたバージョン:
- 1.2
- 関連項目:
ThreadLocal
クラス java.lang.Object から継承されたメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
InheritableThreadLocal
public InheritableThreadLocal()
childValue
protected Object childValue(Object parentValue)
- この継承可能なスレッドローカル変数の初期値を、子スレッドの作成時に親の値に対する関数として計算します。このメソッドは、子が開始される前に親スレッドの中から呼び出されます。
このメソッドは入力引数を返すだけなので、異なる動作が必要な場合にはオーバーライドしてください。
- パラメータ:
parentValue
- 親のスレッドの値
- 戻り値:
- 子のスレッドの初期値
Copyright 2006 Sun Microsystems, Inc. All Rights Reserved. Use of this specification is subject to license terms.