PostSharp.Patterns.Threading.Models Namespace |
This namespace contains the implementation of different threading models.

Class | Description | |
---|---|---|
![]() | ActorThreadingModel | The ActorThreadingModel class describes a threading model in which to methods are processed asynchronously from a single thread, suppressing concurrency inside each instance of the actor. To use the ActorThreadingModel, apply the ActorAttribute to a class. |
![]() | FreezableThreadingModel |
The FreezableThreadingModel class describes a threading model where changes to an object are forbidden after the Freeze()
method has been called on this object.
To use the FreezableThreadingModel, apply the FreezableAttribute custom attribute to a class.
|
![]() | ImmutableThreadingModel |
The ImmutableThreadingModel class describes a threading model where changes to an object are forbidden after completion of the object constructor.
To use the ImmutableThreadingModel, apply the ImmutableAttribute custom attribute to a class.
|
![]() | PrivateThreadingModel |
The PrivateThreadingModel class describes a behavior of objects in which their threading model is
determined by the parent they are assigned to in a parent-child relationship. Objects with this threading model
are considered a private state of their parent object and cannot be accessed from a different object.
|
![]() | ReaderWriterSynchronizedThreadingModel |
The ReaderWriterSynchronizedThreadingModel class describes a threading model where several threads can have concurrent read-only access,
but where writing to the object requires exclusive access.
To use the ReaderWriterSynchronizedThreadingModel, apply the ReaderWriterSynchronizedAttribute custom attribute to a class.
|
![]() | ReadOnlyThreadingModel |
Base class for FreezableThreadingModel and ImmutableThreadingModel.
|
![]() | SynchronizedThreadingModel |
The SynchronizedThreadingModel class describes a threading model where only a single thread can access the object at a time.
To use the SynchronizedThreadingModel, apply the SynchronizedAttribute custom attribute to a class.
|
![]() | ThreadAffineThreadingModel |
The ThreadAffineThreadingModel class describes a threading model where only the thread that created the object has the right to access this object.
To use the ThreadAffineThreadingModel, apply the ThreadAffineAttribute custom attribute to a class.
|
![]() | ThreadUnsafeThreadingModel |
The ThreadUnsafeThreadingModel class describes a threading model an object cannot be accessed concurrently by several threads.
In case of concurrent access, a ConcurrentAccessException exception will be thrown. The thread-unsafe threading model is not strictly
a model, because it cannot be deterministically verified.
To use the ThreadAffineThreadingModel, apply the ThreadUnsafeAttribute custom attribute to a class.
|