Класс InheritableThreadLocal<T>

public class InheritableThreadLocal<T>
extends ThreadLocal<T>

Этот класс расширяет ThreadLocal для обеспечения наследования значений от родительского потока к дочернему потоку: при создании дочернего потока дочерний поток получает начальные значения для всех переменных inheritable thread-local, для которых родительский поток имеет значения. Обычно значения дочернего потока будут идентичны значениям родительского потока; однако, значение дочернего потока может быть произвольной функцией значения родительского потока путём переопределения метода childValue в этом классе.

Переменные inheritable thread-local используются вместо обычных переменных thread-local в тех случаях, когда атрибут на основе потока (например, идентификатор пользователя, идентификатор транзакции), поддерживаемый в переменной, должен автоматически передаваться любым дочерним потокам, которые создаются.

Примечание: во время создания нового thread, можно отказаться от получения начальных значений для inheritable thread-local переменных.

Since:
1.2
See Also:
ThreadLocal

Конструкторы

КонструкторОписание
InheritableThreadLocal()

Методы

Модификатор и типМетодОписание
protected TchildValue​(T parentValue)

Вычисляет начальное значение дочернего потока для этой inheritable thread-local переменной как функцию значения родительского потока в момент создания дочернего потока.

Методы, объявленные в классе java.lang.ThreadLocal

get, initialValue, remove, set, withInitial

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Конструкторы

InheritableThreadLocal

public InheritableThreadLocal()

Методы

childValue

protected T childValue(T parentValue)

Вычисляет начальное значение дочернего потока для этой inheritable thread-local переменной как функцию значения родительского потока в момент создания дочернего потока. Этот метод вызывается из родительского потока до запуска дочернего потока.

Этот метод просто возвращает свой входной аргумент и должен быть переопределён, если требуется другое поведение.

Parameters:
parentValue - значение родительского потока
Returns:
начальное значение дочернего потока

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/InheritableThreadLocal.html

Spec-Zone .ru
спецификации, руководства, описания, API