ExecutionContext Klas

Definitie

Hiermee beheert u de uitvoeringscontext voor de huidige thread. Deze klasse kan niet worden overgenomen.

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
Overname
ExecutionContext
Kenmerken
Implementeringen

Opmerkingen

De ExecutionContext klasse biedt één container voor alle informatie die relevant is voor een logische thread van uitvoering. In .NET Framework omvat dit beveiligingscontext, oproepcontext en synchronisatiecontext. In .NET Core worden de beveiligingscontext en de aanroepcontext echter niet ondersteund, maar de imitatiecontext en cultuur stromen doorgaans met de uitvoeringscontext. Ook in .NET Core stroomt de synchronisatiecontext niet met de uitvoeringscontext, terwijl in .NET Framework dit in sommige gevallen kan gebeuren. Zie ExecutionContext versus SynchronizationContext voor meer informatie.

De ExecutionContext klasse biedt de functionaliteit voor gebruikerscode om deze context vast te leggen en over te dragen over door de gebruiker gedefinieerde asynchrone punten. De algemene taalruntime zorgt ervoor dat de ExecutionContext runtime consistent wordt overgedragen over door runtime gedefinieerde asynchrone punten binnen het beheerde proces.

  • Het volgende is alleen van toepassing op .NET Framework. -

Een uitvoeringscontext is het beheerde equivalent van een COM-appartement. Binnen een toepassingsdomein moet de volledige uitvoeringscontext worden overgedragen wanneer een thread wordt overgedragen. Deze situatie treedt op tijdens overdrachten van de Thread.Start methode, de meeste threadpoolbewerkingen en Windows Forms thread marshaling via de Windows berichtpomp. Dit gebeurt niet in onveilige threadpoolbewerkingen (zoals de UnsafeQueueUserWorkItem methode), die de gecomprimeerde stack niet overdragen. Waar ook de gecomprimeerde stackstromen, de beheerde principal, synchronisatie, landinstelling en gebruikerscontext stromen. De ExecutionContext klasse biedt de Capture en CreateCopy methoden om de uitvoeringscontext en de Run methode op te halen voor het instellen van de uitvoeringscontext voor de huidige thread.

Een ExecutionContext thread die is gekoppeld aan een thread, kan niet worden ingesteld op een andere thread. Als u dit probeert, wordt er een uitzondering gegenereerd. Als u de van de ExecutionContext ene thread naar de andere wilt doorgeven, maakt u een kopie van de ExecutionContext.

ExecutionContext Intern worden alle gegevens opgeslagen die zijn gekoppeld aan de LogicalCallContext. Hierdoor kunnen de LogicalCallContext gegevens worden doorgegeven wanneer de ExecutionContext gegevens worden gekopieerd en overgedragen.

Methoden

Name Description
Capture()

Legt de uitvoeringscontext van de huidige thread vast.

CreateCopy()

Hiermee maakt u een kopie van de huidige uitvoeringscontext.

Dispose()

Alle resources die door het huidige exemplaar van de ExecutionContext klasse worden gebruikt, worden vrijgegeven.

Equals(Object)

Bepaalt of het opgegeven object gelijk is aan het huidige object.

(Overgenomen van Object)
GetHashCode()

Fungeert als de standaardhashfunctie.

(Overgenomen van Object)
GetObjectData(SerializationInfo, StreamingContext)

Hiermee stelt u het opgegeven SerializationInfo object in met de logische contextinformatie die nodig is om een exemplaar van de huidige uitvoeringscontext opnieuw te maken.

GetType()

Hiermee haalt u de Type huidige instantie op.

(Overgenomen van Object)
IsFlowSuppressed()

Geeft aan of de stroom van de uitvoeringscontext momenteel wordt onderdrukt.

MemberwiseClone()

Hiermee maakt u een ondiepe kopie van de huidige Object.

(Overgenomen van Object)
RestoreFlow()

Hiermee herstelt u de stroom van de uitvoeringscontext in asynchrone threads.

Run(ExecutionContext, ContextCallback, Object)

Voert een methode uit in een opgegeven uitvoeringscontext op de huidige thread.

SuppressFlow()

Onderdrukt de stroom van de uitvoeringscontext in asynchrone threads.

ToString()

Retourneert een tekenreeks die het huidige object vertegenwoordigt.

(Overgenomen van Object)

Van toepassing op