ThreadLocal<T> Constructors
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Initializes a ThreadLocal<T> instance.
Overloads
ThreadLocal<T>() |
Initializes the ThreadLocal<T> instance. |
ThreadLocal<T>(Boolean) |
Initializes the ThreadLocal<T> instance and specifies whether all values are accessible from any thread. |
ThreadLocal<T>(Func<T>) |
Initializes the ThreadLocal<T> instance with the specified |
ThreadLocal<T>(Func<T>, Boolean) |
Initializes the ThreadLocal<T> instance with the specified |
ThreadLocal<T>()
- Source:
- ThreadLocal.cs
- Source:
- ThreadLocal.cs
- Source:
- ThreadLocal.cs
Initializes the ThreadLocal<T> instance.
public:
ThreadLocal();
public ThreadLocal ();
Public Sub New ()
Remarks
The default value of T
is used to initialize the instance when Value is accessed for the first time.
This constructor is equivalent to calling the ThreadLocal<T>(Boolean) constructor with a value of false
for the trackAllValues
argument.
See also
Applies to
ThreadLocal<T>(Boolean)
- Source:
- ThreadLocal.cs
- Source:
- ThreadLocal.cs
- Source:
- ThreadLocal.cs
Initializes the ThreadLocal<T> instance and specifies whether all values are accessible from any thread.
public:
ThreadLocal(bool trackAllValues);
public ThreadLocal (bool trackAllValues);
new System.Threading.ThreadLocal<'T> : bool -> System.Threading.ThreadLocal<'T>
Public Sub New (trackAllValues As Boolean)
Parameters
- trackAllValues
- Boolean
true
to track all values set on the instance and expose them through the Values property; false
otherwise. When set to true
, a value stored from a given thread will be available through Values even after that thread has exited.
Remarks
If trackAllValues
is false
, only the value of this instance for the current thread is accessible. Attempting to use the Values property to retrieve all values throws an InvalidOperationException exception.
Applies to
ThreadLocal<T>(Func<T>)
- Source:
- ThreadLocal.cs
- Source:
- ThreadLocal.cs
- Source:
- ThreadLocal.cs
Initializes the ThreadLocal<T> instance with the specified valueFactory
function.
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))
Parameters
- valueFactory
- Func<T>
The Func<TResult> invoked to produce a lazily-initialized value when an attempt is made to retrieve Value without it having been previously initialized.
Exceptions
valueFactory
is a null reference (Nothing in Visual Basic).
See also
Applies to
ThreadLocal<T>(Func<T>, Boolean)
- Source:
- ThreadLocal.cs
- Source:
- ThreadLocal.cs
- Source:
- ThreadLocal.cs
Initializes the ThreadLocal<T> instance with the specified valueFactory
function and a flag that indicates whether all values are accessible from any thread.
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)
Parameters
- valueFactory
- Func<T>
The Func<TResult> invoked to produce a lazily-initialized value when an attempt is made to retrieve Value without it having been previously initialized.
- trackAllValues
- Boolean
true
to track all values set on the instance and expose them through the Values property; false
otherwise. When set to true
, a value stored from a given thread will be available through Values even after that thread has exited.
Exceptions
valueFactory
is a null
reference (Nothing
in Visual Basic).
Remarks
If trackAllValues
is false
, only the value of this instance for the current thread is accessible. Attempting to use the Values property to retrieve all values throws an InvalidOperationException exception.