Lazy<T> Constructor (Func<T>)
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
Initializes a new instance of the Lazy<T> class. When lazy initialization occurs, the specified initialization function is used.
Assembly: mscorlib (in mscorlib.dll)
Parameters
- valueFactory
- Type: System.Func<T>
The delegate that is invoked to produce the lazily initialized value when it is needed.
| Exception | Condition |
|---|---|
| ArgumentNullException | valueFactory is null. |
An instance that is created with this constructor may be used concurrently from multiple threads.
The thread safety mode of a Lazy<T> instance that is created by using this constructor is LazyThreadSafetyMode.ExecutionAndPublication. The thread safety mode describes the behavior when multiple threads try to initialize the Lazy<T> instance.
Exceptions that are thrown by valueFactory are cached. For more information, see the System.Threading.LazyThreadSafetyMode enumeration.