Click or drag to resize

Function<TIndependent, TDependent>.IsThreadSafe Property

Gets a value indicating whether the methods on this instance are safe to call from multiple threads simultaneously.

Namespace:  AGI.Foundation
Assembly:  AGI.Foundation.Core (in AGI.Foundation.Core.dll) Version: 24.3.420.0 (24.3.420.0)
Syntax
public abstract bool IsThreadSafe { get; }

Property Value

Type: Boolean

Implements

IThreadAware.IsThreadSafe
Remarks

If this property is true, all methods and properties are guaranteed to be thread safe. Conceptually, an object that returns true for this method acts as if there is a lock protecting each method and property such that only one thread at a time can be inside any method or property in the class. In reality, such locks are generally not used and are in fact discouraged. However, the user must not experience any exceptions or inconsistent behavior that would not be experienced if such locks were used.

If this property is false, the behavior when using this class from multiple threads simultaneously is undefined and may include inconsistent results and exceptions. Clients wishing to use multiple threads should call Copy<T> (T) to get a separate instance of the object for each thread.

See Also