java.lang.Object java.lang.ThreadLocal<T> java.lang.InheritableThreadLocal<T>
public class InheritableThreadLocal<T>
该类扩展了 ThreadLocal,为子线程提供从父线程那里继承的值:在创建子线程时,子线程会接收所有可继承的线程局部变量的初始值,以获得父线程所具有的值。通常,子线程的值与父线程的值是一致的;但是,通过重写这个类中的 childValue 方法,子线程的值可以作为父线程值的一个任意函数。
当必须将变量(如用户 ID 和 事务 ID)中维护的每线程属性(per-thread-attribute)自动传送给创建的所有子线程时,应尽可能地采用可继承的线程局部变量,而不是采用普通的线程局部变量。
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 |
构造方法详细信息 |
---|
public InheritableThreadLocal()
方法详细信息 |
---|
protected T childValue(T parentValue)
该方法仅返回其输入变量,如果所需要的是其他行为,则应该重写此方法。
parentValue
- 父线程的值