JavaTM 2 Platform
Standard Ed. 5.0

java.lang
クラス InheritableThreadLocal<T>

java.lang.Object
  上位を拡張 java.lang.ThreadLocal<T>
      上位を拡張 java.lang.InheritableThreadLocal<T>

public class InheritableThreadLocal<T>
extends ThreadLocal<T>

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

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

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

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

コンストラクタの詳細

InheritableThreadLocal

public InheritableThreadLocal()
メソッドの詳細

childValue

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

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

パラメータ:
parentValue - 親のスレッドの値
戻り値:
子のスレッドの初期値

JavaTM 2 Platform
Standard Ed. 5.0

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

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。