ExecutionContext Klasse

Definition

Verwaltet den Ausführungskontext für den aktuellen Thread.Manages the execution context for the current thread. Diese Klasse kann nicht vererbt werden.This class cannot be inherited.

public ref class ExecutionContext sealed
public ref class ExecutionContext sealed : IDisposable, System::Runtime::Serialization::ISerializable
public ref class ExecutionContext sealed : System::Runtime::Serialization::ISerializable
public sealed class ExecutionContext
public sealed class ExecutionContext : IDisposable, System.Runtime.Serialization.ISerializable
[System.Serializable]
public sealed class ExecutionContext : System.Runtime.Serialization.ISerializable
[System.Serializable]
public sealed class ExecutionContext : IDisposable, System.Runtime.Serialization.ISerializable
type ExecutionContext = class
type ExecutionContext = class
    interface IDisposable
    interface ISerializable
type ExecutionContext = class
    interface ISerializable
Public NotInheritable Class ExecutionContext
Public NotInheritable Class ExecutionContext
Implements IDisposable, ISerializable
Public NotInheritable Class ExecutionContext
Implements ISerializable
Vererbung
ExecutionContext
Attribute
Implementiert

Hinweise

Die ExecutionContext-Klasse stellt einen einzelnen Container für alle Informationen bereit, die für einen logischen Ausführungs Thread relevant sind.The ExecutionContext class provides a single container for all information relevant to a logical thread of execution. Dies schließt den Sicherheitskontext, den Aufrufkontext und den Synchronisierungs Kontext ein.This includes security context, call context, and synchronization context.

Die ExecutionContext-Klasse stellt die Funktionalität bereit, mit der Benutzercode diesen Kontext erfassen und über benutzerdefinierte asynchrone Punkte übertragen können.The ExecutionContext class provides the functionality for user code to capture and transfer this context across user-defined asynchronous points. Der Common Language Runtime stellt sicher, dass die ExecutionContext konsistent über die Laufzeit definierten asynchronen Punkte innerhalb des verwalteten Prozesses übertragen wird.The common language runtime ensures that the ExecutionContext is consistently transferred across runtime-defined asynchronous points within the managed process.

Ein Ausführungs Kontext ist das verwaltete Äquivalent eines COM-Apartment.An execution context is the managed equivalent of a COM apartment. Innerhalb einer Anwendungsdomäne muss der gesamte Ausführungs Kontext übertragen werden, wenn ein Thread übertragen wird.Within an application domain, the entire execution context must be transferred whenever a thread is transferred. Diese Situation tritt während der Übertragung durch die Thread.Start-Methode, die meisten Thread Pool Vorgänge und Windows Forms Thread, der durch die Windows-Nachrichten Pump marshallert wird, auf.This situation occurs during transfers made by the Thread.Start method, most thread pool operations, and Windows Forms thread marshaling through the Windows message pump. Sie tritt nicht in unsicheren Thread Pool Vorgängen (z. b. der UnsafeQueueUserWorkItem-Methode) auf, die den komprimierten Stapel nicht übertragen.It does not occur in unsafe thread pool operations (such as the UnsafeQueueUserWorkItem method), which do not transfer the compressed stack. Wenn der komprimierte Stapel fließt, werden auch der verwaltete Prinzipal, die Synchronisierung, das Gebiets Schema und der Benutzer Kontext fließen.Wherever the compressed stack flows, the managed principal, synchronization, locale, and user context also flow. Die ExecutionContext-Klasse stellt die Methoden Capture und CreateCopy bereit, um den Ausführungs Kontext zu erhalten, und die Run-Methode, um den Ausführungs Kontext für den aktuellen Thread festzulegen.The ExecutionContext class provides the Capture and CreateCopy methods to get the execution context and the Run method to set the execution context for the current thread.

Eine ExecutionContext, die einem Thread zugeordnet ist, kann nicht für einen anderen Thread festgelegt werden.An ExecutionContext that is associated with a thread cannot be set on another thread. Wenn Sie versuchen, dies zu tun, wird eine Ausnahme ausgelöst.Attempting to do so will result in an exception being thrown. Wenn Sie die ExecutionContext von einem Thread an einen anderen übertragen möchten, erstellen Sie eine Kopie des ExecutionContext.To propagate the ExecutionContext from one thread to another, make a copy of the ExecutionContext.

Intern speichert das ExecutionContext alle Daten, die dem LogicalCallContextzugeordnet sind.Internally, the ExecutionContext stores all data that is associated with the LogicalCallContext. Dadurch können die LogicalCallContext Daten weitergegeben werden, wenn der ExecutionContext kopiert und übertragen wird.This allows the LogicalCallContext data to be propagated when the ExecutionContext is copied and transferred.

Methoden

Capture()

Zeichnet den Ausführungskontext des aktuellen Threads auf.Captures the execution context from the current thread.

CreateCopy()

Erstellt eine Kopie des aktuellen Ausführungskontexts.Creates a copy of the current execution context.

Dispose()

Gibt alle von der aktuellen Instanz der ExecutionContext-Klasse verwendeten Ressourcen frei.Releases all resources used by the current instance of the ExecutionContext class.

Equals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.Determines whether the specified object is equal to the current object.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Geerbt von Object)
GetObjectData(SerializationInfo, StreamingContext)

Legt das SerializationInfo-Objekt mit den logischen Kontextinformationen ab, die zum erneuten Erstellen einer Instanz des aktuellem Ausführungskontexts erforderlich sind.Sets the specified SerializationInfo object with the logical context information needed to recreate an instance of the current execution context.

GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Geerbt von Object)
IsFlowSuppressed()

Gibt an, ob der Fluss des Ausführungskontexts derzeit unterdrückt wird.Indicates whether the flow of the execution context is currently suppressed.

MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Geerbt von Object)
RestoreFlow()

Stellt den Fluss des Ausführungskontexts über asynchrone Threads wieder her.Restores the flow of the execution context across asynchronous threads.

Run(ExecutionContext, ContextCallback, Object)

Führt für den aktuellen Thread eine Methode in einem angegebenen Ausführungskontext aus.Runs a method in a specified execution context on the current thread.

SuppressFlow()

Unterdrückt den Fluss des Ausführungskontexts über asynchrone Threads hinweg.Suppresses the flow of the execution context across asynchronous threads.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Geerbt von Object)

Gilt für: