Redigera

Dela via


DispatcherObject Class

Definition

Represents an object that is associated with a Dispatcher.

public ref class DispatcherObject abstract
public abstract class DispatcherObject
type DispatcherObject = class
Public MustInherit Class DispatcherObject
Inheritance
DispatcherObject
Derived

Remarks

Only the thread that the Dispatcher was created on may access the DispatcherObject directly. To access a DispatcherObject from a thread other than the thread the DispatcherObject was created on, call Invoke or BeginInvoke on the Dispatcher the DispatcherObject is associated with.

Subclasses of DispatcherObject that need to enforce thread safety can do so by calling VerifyAccess on all public methods. This guarantees the calling thread is the thread that the DispatcherObject was created on.

A DispatcherObject cannot be independently instantiated; that is, all constructors are protected.

Objects that derive from DispatcherObject have thread affinity.

Objects that derive from Freezable are free-threaded when they are frozen. For more information, see the Freezable Objects Overview.

Constructors

DispatcherObject()

Initializes a new instance of the DispatcherObject class.

Properties

Dispatcher

Gets the Dispatcher this DispatcherObject is associated with.

Methods

CheckAccess()

Determines whether the calling thread has access to this DispatcherObject.

Equals(Object)

Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode()

Serves as the default hash function.

(Inherited from Object)
GetType()

Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from Object)
ToString()

Returns a string that represents the current object.

(Inherited from Object)
VerifyAccess()

Enforces that the calling thread has access to this DispatcherObject.

Applies to

Thread Safety

Any public static members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

This object can be accessed only from the thread on which it was created. Attempts to access it from other threads will throw an InvalidOperationException. Invoke(DispatcherPriority, Delegate) or BeginInvoke(DispatcherPriority, Delegate) provide support for marshaling work to the correct thread.