ExecutionContext Classe

Définition

Gère le contexte d’exécution du thread actuel. Cette classe ne peut pas être héritée.

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

Remarques

La ExecutionContext classe fournit un conteneur unique pour toutes les informations pertinentes pour un thread logique d’exécution. Dans .NET Framework, cela inclut le contexte de sécurité, le contexte d’appel et le contexte de synchronisation. Dans .NET Core, le contexte de sécurité et le contexte d’appel ne sont pas pris en charge. Toutefois, le contexte d’emprunt d’identité et la culture circulent généralement avec le contexte d’exécution. En outre, dans .NET Core, le contexte de synchronisation ne circule pas avec le contexte d’exécution, tandis que dans .NET Framework, il peut dans certains cas. Pour plus d’informations, consultez ExecutionContext et SynchronizationContext.

La ExecutionContext classe fournit la fonctionnalité de code utilisateur pour capturer et transférer ce contexte entre les points asynchrones définis par l’utilisateur. Le Common Language Runtime garantit le ExecutionContext transfert cohérent entre les points asynchrones définis par le runtime au sein du processus managé.

  • Les éléments suivants s’appliquent uniquement à .NET Framework. -

Un contexte d’exécution est l’équivalent géré d’un appartement COM. Dans un domaine d’application, le contexte d’exécution entier doit être transféré chaque fois qu’un thread est transféré. Cette situation se produit pendant les transferts effectués par la méthode Thread.Start, la plupart des opérations de pool de threads et Windows Forms marshaling de threads via la pompe de messages Windows. Il ne se produit pas dans les opérations de pool de threads non sécurisées (telles que la UnsafeQueueUserWorkItem méthode), qui ne transfèrent pas la pile compressée. Chaque fois que la pile compressée circule, le principal managé, la synchronisation, les paramètres régionaux et le contexte utilisateur circulent également. La ExecutionContext classe fournit les méthodes et CreateCopy les Capture méthodes permettant d’obtenir le contexte d’exécution et la Run méthode pour définir le contexte d’exécution du thread actuel.

Un ExecutionContext thread associé à un thread ne peut pas être défini sur un autre thread. Si vous tentez de le faire, une exception est levée. Pour propager le ExecutionContext thread d’un thread à un autre, effectuez une copie du ExecutionContext.

En interne, les ExecutionContext magasins de toutes les données associées à l’objet LogicalCallContext. Cela permet de propager les LogicalCallContext données quand elles ExecutionContext sont copiées et transférées.

Méthodes

Nom Description
Capture()

Capture le contexte d’exécution à partir du thread actuel.

CreateCopy()

Crée une copie du contexte d’exécution actuel.

Dispose()

Libère toutes les ressources utilisées par l’instance actuelle de la ExecutionContext classe.

Equals(Object)

Détermine si l’objet spécifié est égal à l’objet actuel.

(Hérité de Object)
GetHashCode()

Sert de fonction de hachage par défaut.

(Hérité de Object)
GetObjectData(SerializationInfo, StreamingContext)

Définit l’objet spécifié SerializationInfo avec les informations de contexte logique nécessaires pour recréer une instance du contexte d’exécution actuel.

GetType()

Obtient la Type de l’instance actuelle.

(Hérité de Object)
IsFlowSuppressed()

Indique si le flux du contexte d’exécution est actuellement supprimé.

MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
RestoreFlow()

Restaure le flux du contexte d’exécution entre les threads asynchrones.

Run(ExecutionContext, ContextCallback, Object)

Exécute une méthode dans un contexte d’exécution spécifié sur le thread actuel.

SuppressFlow()

Supprime le flux du contexte d’exécution entre les threads asynchrones.

ToString()

Retourne une chaîne qui représente l’objet actuel.

(Hérité de Object)

S’applique à