ThreadLocal<T> 构造函数

定义

初始化 ThreadLocal<T> 实例。

重载

ThreadLocal<T>()

初始化 ThreadLocal<T> 实例。

ThreadLocal<T>(Boolean)

初始化 ThreadLocal<T> 实例并指定是否可从任意线程访问所有值。

ThreadLocal<T>(Func<T>)

使用指定的 valueFactory 函数初始化 ThreadLocal<T> 实例。

ThreadLocal<T>(Func<T>, Boolean)

使用指定的 valueFactory 函数和指示是否可从任意线程访问所有值的标志初始化 ThreadLocal<T> 实例。

ThreadLocal<T>()

初始化 ThreadLocal<T> 实例。

public:
 ThreadLocal();
public ThreadLocal ();
Public Sub New ()

注解

默认值 T 用于首次访问实例时 Value 初始化实例。

此构造函数等效于调用ThreadLocal<T>(Boolean)具有参数值的false``trackAllValues构造函数。

另请参阅

适用于

ThreadLocal<T>(Boolean)

初始化 ThreadLocal<T> 实例并指定是否可从任意线程访问所有值。

public:
 ThreadLocal(bool trackAllValues);
public ThreadLocal (bool trackAllValues);
new System.Threading.ThreadLocal<'T> : bool -> System.Threading.ThreadLocal<'T>
Public Sub New (trackAllValues As Boolean)

参数

trackAllValues
Boolean

如果跟踪实例上的所有值集并通过 Values 属性将其公开,则为 true;否则为 false。 When set to true, a value stored from a given thread will be available through Values even after that thread has exited.

注解

false如果是trackAllValues,则只能访问当前线程的此实例的值。 尝试使用该 Values 属性检索所有值会引发异常 InvalidOperationException

适用于

ThreadLocal<T>(Func<T>)

使用指定的 valueFactory 函数初始化 ThreadLocal<T> 实例。

public:
 ThreadLocal(Func<T> ^ valueFactory);
public ThreadLocal (Func<T> valueFactory);
new System.Threading.ThreadLocal<'T> : Func<'T> -> System.Threading.ThreadLocal<'T>
Public Sub New (valueFactory As Func(Of T))

参数

valueFactory
Func<T>

如果在 Func<TResult> 之前尚未初始化的情况下尝试对其进行检索,则会调用 Value 生成延迟初始化的值。

例外

valueFactory 为 null 引用(在 Visual Basic 中为 Nothing)。

另请参阅

适用于

ThreadLocal<T>(Func<T>, Boolean)

使用指定的 valueFactory 函数和指示是否可从任意线程访问所有值的标志初始化 ThreadLocal<T> 实例。

public:
 ThreadLocal(Func<T> ^ valueFactory, bool trackAllValues);
public ThreadLocal (Func<T> valueFactory, bool trackAllValues);
new System.Threading.ThreadLocal<'T> : Func<'T> * bool -> System.Threading.ThreadLocal<'T>
Public Sub New (valueFactory As Func(Of T), trackAllValues As Boolean)

参数

valueFactory
Func<T>

如果在 Value 之前尚未初始化的情况下尝试对其进行检索,则会调用 Func<TResult> 生成延迟初始化的值。

trackAllValues
Boolean

如果跟踪实例上的所有值集并通过 Values 属性将其公开,则为 true;否则为 false。 When set to true, a value stored from a given thread will be available through Values even after that thread has exited.

例外

valueFactorynull 引用(在 Visual Basic 中为 Nothing)。

注解

false如果是trackAllValues,则只能访问当前线程的此实例的值。 尝试使用该 Values 属性检索所有值会引发异常 InvalidOperationException

适用于