I am wondering what is the difference between two constructor overloads of Lazy<T> class.
Lazy(Func, Boolean) - Initializes a new instance of the Lazy class. When lazy initialization occurs, the specified initialization function and initialization mode are used.
Lazy(Func, LazyThreadSafetyMode) - Initializes a new instance of the Lazy class that uses the specified initialization function and thread-safety mode.
Is the second constructor more flexible from the point of thread-safety? Which LazyThreadSafetyMode member is an analogue for Lazy<...>(..., true)?