Open sandboxFocus

Namespace PostSharp.Patterns.Threading.Models

Classes

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.

ReadOnlyThreadingModel

Base class for FreezableThreadingModel and ImmutableThreadingModel.

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.

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.