SynchronizationContext Class

Definition

Provides the basic functionality for propagating a synchronization context in various synchronization models.

public class SynchronizationContext
Inheritance
SynchronizationContext
Derived

Inherited Members

System.Object

Remarks

The SynchronizationContext class is a base class that provides a free-threaded context with no synchronization.

The purpose of the synchronization model implemented by this class is to allow the internal asynchronous/synchronous operations of the common language runtime to behave properly with different synchronization models. This model also simplifies some of the requirements that managed applications have had to follow in order to work correctly under different synchronization environments.

Providers of synchronization models can extend this class and provide their own implementations for these methods.

For more information about synchronization contexts, see the article It's All About the SynchronizationContext in the MSDN Magazine.

Constructors

SynchronizationContext()

Creates a new instance of the SynchronizationContext class.

Properties

Current

Gets the synchronization context for the current thread.

Methods

CreateCopy()

When overridden in a derived class, creates a copy of the synchronization context.

IsWaitNotificationRequired()

Determines if wait notification is required.

OperationCompleted()

When overridden in a derived class, responds to the notification that an operation has completed.

OperationStarted()

When overridden in a derived class, responds to the notification that an operation has started.

Post(SendOrPostCallback, Object)

When overridden in a derived class, dispatches an asynchronous message to a synchronization context.

Send(SendOrPostCallback, Object)

When overridden in a derived class, dispatches a synchronous message to a synchronization context.

SetSynchronizationContext(SynchronizationContext)

Sets the current synchronization context.

SetThreadStaticContext(SynchronizationContext)
SetWaitNotificationRequired()

Sets notification that wait notification is required and prepares the callback method so it can be called more reliably when a wait occurs.

Wait(IntPtr[], Boolean, Int32)

Waits for any or all the elements in the specified array to receive a signal.

WaitHelper(IntPtr[], Boolean, Int32)

Helper function that waits for any or all the elements in the specified array to receive a signal.