Module  java.base
软件包  java.lang

Class InheritableThreadLocal<T>



  • public class InheritableThreadLocal<T>
    extends ThreadLocal<T>
    该类扩展了ThreadLocal以提供从父线程到子线程的值的继承:当子线程被创建时,子接收到父值具有值的所有可继承的线程局部变量的初始值。 孩子的价值通常与父母的价值相同; 然而,通过覆盖本childValue中的childValue方法,孩子的价值可以作为父母的任意函数。

    当维护变量中的每个线程属性(例如,用户ID,事务ID)必须自动发送到创建的任何子线程时,可以使用可继承的线程局部变量。

    注意:在创建新的thread期间 ,可以选择不接收可继承的线程局部变量的初始值。

    从以下版本开始:
    1.2
    另请参见:
    ThreadLocal
    • 构造方法详细信息

      • InheritableThreadLocal

        public InheritableThreadLocal​()
    • 方法详细信息

      • childValue

        protected T childValue​(T parentValue)
        在子线程创建时,根据父值的值计算该可继承线程局部变量的子级初始值。 这个方法是在孩子启动之前从父线程中调用的。

        该方法只返回其输入参数,如果需要不同的行为,应该被覆盖。

        参数
        parentValue - 父线程的值
        结果
        the child thread's initial value