ExecutionContext ExecutionContext ExecutionContext ExecutionContext Class

Définition

Gère le contexte d'exécution du thread actuel.Manages the execution context for the current thread. Cette classe ne peut pas être héritée.This class cannot be inherited.

public ref class ExecutionContext sealed : IDisposable, System::Runtime::Serialization::ISerializable
[System.Serializable]
public sealed class ExecutionContext : IDisposable, System.Runtime.Serialization.ISerializable
type ExecutionContext = class
    interface IDisposable
    interface ISerializable
Public NotInheritable Class ExecutionContext
Implements IDisposable, ISerializable
Héritage
ExecutionContextExecutionContextExecutionContextExecutionContext
Attributs
Implémente

Remarques

La ExecutionContext classe fournit un conteneur unique pour toutes les informations relatives à un thread d’exécution logique.The ExecutionContext class provides a single container for all information relevant to a logical thread of execution. Cela comprend le contexte de sécurité, le contexte d’appel et le contexte de synchronisation.This includes security context, call context, and synchronization context.

La ExecutionContext classe fournit les fonctionnalités permettant au code utilisateur de capturer et de transférer ce contexte sur des points asynchrones définis par l’utilisateur.The ExecutionContext class provides the functionality for user code to capture and transfer this context across user-defined asynchronous points. Le Common Language Runtime garantit que le ExecutionContext est régulièrement transféré à travers des points asynchrones définis par l’exécution dans le processus managé.The common language runtime ensures that the ExecutionContext is consistently transferred across runtime-defined asynchronous points within the managed process.

Un contexte d’exécution est l’équivalent managé d’un cloisonnement COM.An execution context is the managed equivalent of a COM apartment. Au sein d’un domaine d’application, le contexte d’exécution entier doit être transféré chaque fois qu’un thread est transféré.Within an application domain, the entire execution context must be transferred whenever a thread is transferred. Cette situation se produit pendant les transferts effectués Thread.Start par la méthode, la plupart des opérations de pool de threads et le Windows Forms le marshaling de threads par le biais de la pompe de messages Windows.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. Elle ne se produit pas dans les opérations de pool de threads non UnsafeQueueUserWorkItem sécurisées (telles que la méthode), qui ne transfèrent pas la pile compressée.It does not occur in unsafe thread pool operations (such as the UnsafeQueueUserWorkItem method), which do not transfer the compressed stack. Quel que soit le flux de pile compressé, le principal managé, la synchronisation, les paramètres régionaux et le contexte utilisateur sont également transmis.Wherever the compressed stack flows, the managed principal, synchronization, locale, and user context also flow. La ExecutionContext classe fournit les Capture méthodes CreateCopy et pour obtenir le contexte d’exécution et Run la méthode pour définir le contexte d’exécution du thread actuel.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.

Un ExecutionContext qui est associé à un thread ne peut pas être défini sur un autre thread.An ExecutionContext that is associated with a thread cannot be set on another thread. Toute tentative de ce faire entraînera la levée d’une exception.Attempting to do so will result in an exception being thrown. Pour propager ExecutionContext le d’un thread à un autre, effectuez une copie ExecutionContextde.To propagate the ExecutionContext from one thread to another, make a copy of the ExecutionContext.

En interne, le ExecutionContext stocke toutes les données associées au LogicalCallContext.Internally, the ExecutionContext stores all data that is associated with the LogicalCallContext. Cela permet de LogicalCallContext propager les données lorsque le ExecutionContext est copié et transféré.This allows the LogicalCallContext data to be propagated when the ExecutionContext is copied and transferred.

Méthodes

Capture() Capture() Capture() Capture()

Capture le contexte d'exécution du thread actuel.Captures the execution context from the current thread.

CreateCopy() CreateCopy() CreateCopy() CreateCopy()

Crée une copie du contexte d'exécution actuel.Creates a copy of the current execution context.

Dispose() Dispose() Dispose() Dispose()

Libère toutes les ressources utilisées par l'instance actuelle de la classe ExecutionContext.Releases all resources used by the current instance of the ExecutionContext class.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Détermine si l'objet spécifié est identique à l'objet actuel.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Fait office de fonction de hachage par défaut.Serves as the default hash function.

(Inherited from Object)
GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext)

Définit l'objet SerializationInfo spécifié avec les informations de contexte logiques nécessaires à la recréation d'une instance du contexte d'exécution en cours.Sets the specified SerializationInfo object with the logical context information needed to recreate an instance of the current execution context.

GetType() GetType() GetType() GetType()

Obtient le Type de l'instance actuelle.Gets the Type of the current instance.

(Inherited from Object)
IsFlowSuppressed() IsFlowSuppressed() IsFlowSuppressed() IsFlowSuppressed()

Indique si le flux du contexte d'exécution est actuellement supprimé.Indicates whether the flow of the execution context is currently suppressed.

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crée une copie superficielle de l'objet Object actuel.Creates a shallow copy of the current Object.

(Inherited from Object)
RestoreFlow() RestoreFlow() RestoreFlow() RestoreFlow()

Restaure le flux du contexte d'exécution sur des threads asynchrones.Restores the flow of the execution context across asynchronous threads.

Run(ExecutionContext, ContextCallback, Object) Run(ExecutionContext, ContextCallback, Object) Run(ExecutionContext, ContextCallback, Object) Run(ExecutionContext, ContextCallback, Object)

Exécute une méthode dans un contexte d'exécution spécifié sur le thread actuel.Runs a method in a specified execution context on the current thread.

SuppressFlow() SuppressFlow() SuppressFlow() SuppressFlow()

Supprime le flux du contexte d'exécution sur des threads asynchrones.Suppresses the flow of the execution context across asynchronous threads.

ToString() ToString() ToString() ToString()

Retourne une chaîne qui représente l'objet actuel.Returns a string that represents the current object.

(Inherited from Object)

S’applique à