JavaTM 2
Platform
Std. Ed. v1.4.0

java.lang
クラス InheritableThreadLocal

java.lang.Object
  |
  +--java.lang.ThreadLocal
        |
        +--java.lang.InheritableThreadLocal

public class InheritableThreadLocal
extends ThreadLocal

このクラスは、親スレッドから子スレッドへの値の継承を提供するために、ThreadLocal を拡張します。子スレッドの作成時に、子は、親が値を保持する継承可能なスレッドローカル変数すべての初期値を受け取ります。通常、子の値は親の値と同じです。しかし、このクラスの childValue メソッドをオーバーライドすれば、子の値を親の値に対する任意の関数にできます。

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

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

コンストラクタの概要
InheritableThreadLocal()
           
 
メソッドの概要
protected  Object childValue(Object parentValue)
          この継承可能なスレッドローカル変数の初期値を、子スレッドの作成時に親の値に対する関数として計算します。
 
クラス java.lang.ThreadLocal から継承したメソッド
get, initialValue, set
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

InheritableThreadLocal

public InheritableThreadLocal()
メソッドの詳細

childValue

protected Object childValue(Object parentValue)
この継承可能なスレッドローカル変数の初期値を、子スレッドの作成時に親の値に対する関数として計算します。このメソッドは、子が開始される前に親スレッドの中から呼び出されます。

このメソッドは入力引数を返すだけなので、異なる動作が必要な場合にはオーバーライドしてください。

オーバーライド:
クラス ThreadLocal 内の childValue
パラメータ:
parentValue - 親のスレッドの値
戻り値:
子のスレッドの初期値

JavaTM 2
Platform
Std. Ed. v1.4.0

バグの報告と機能のリクエスト
これ以外の API リファレンスおよび開発者用ドキュメントについては、 Java 2 SDK SE 開発者用ドキュメントを参照してください。 開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、 およびコード実例が含まれています。

Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.