ExecutionContext Klasa

Definicja

Zarządza kontekstem wykonywania bieżącego wątku. Klasa ta nie może być dziedziczona.

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
Dziedziczenie
ExecutionContext
Atrybuty
Implementuje

Uwagi

Klasa ExecutionContext udostępnia jeden kontener dla wszystkich informacji istotnych dla logicznego wątku wykonywania. W programie .NET Framework obejmuje to kontekst zabezpieczeń, kontekst wywołania i kontekst synchronizacji. W .NET Core kontekst zabezpieczeń i kontekst wywołania nie są obsługiwane, jednak kontekst personifikacji i kultura zwykle przepływają z kontekstem wykonywania. Również w .NET Core kontekst synchronizacji nie przepływa z kontekstem wykonywania, podczas gdy w .NET Framework może w niektórych przypadkach. Aby uzyskać więcej informacji, zobacz ExecutionContext vs SynchronizationContext.

Klasa ExecutionContext udostępnia funkcje kodu użytkownika do przechwytywania i transferu tego kontekstu między punktami asynchronicznymi zdefiniowanymi przez użytkownika. Środowisko uruchomieniowe języka wspólnego gwarantuje, że ExecutionContext element jest stale przesyłany między punktami asynchronicznymi zdefiniowanymi przez środowisko uruchomieniowe w ramach zarządzanego procesu.

  • Poniżej obowiązuje tylko .NET Framework. -

Kontekst wykonywania jest zarządzanym odpowiednikiem mieszkania COM. W domenie aplikacji cały kontekst wykonywania musi być przenoszony za każdym razem, gdy wątek zostanie przeniesiony. Taka sytuacja występuje podczas transferów wykonywanych przez metodę Thread.Start, większość operacji puli wątków i Windows Forms marshaling wątków za pośrednictwem pompy komunikatów Windows. Nie występuje w niebezpiecznych operacjach puli wątków (takich jak UnsafeQueueUserWorkItem metoda), które nie przesyłają skompresowanego stosu. Wszędzie tam, gdzie przepływa skompresowany stos, przepływ również zarządzanego podmiotu zabezpieczeń, synchronizacji, ustawień regionalnych i kontekstu użytkownika. Klasa ExecutionContext udostępnia Capture metody i CreateCopy umożliwiające uzyskanie kontekstu wykonywania oraz Run metodę ustawiania kontekstu wykonywania dla bieżącego wątku.

Nie ExecutionContext można ustawić elementu skojarzonego z wątkiem w innym wątku. Próba wykonania tej czynności spowoduje zgłoszenie wyjątku. Aby propagować element z jednego wątku ExecutionContext do innego, utwórz kopię elementu ExecutionContext.

Wewnętrznie program ExecutionContext przechowuje wszystkie dane skojarzone z elementem LogicalCallContext. Umożliwia LogicalCallContext to propagację danych podczas kopiowania ExecutionContext i przesyłania.

Metody

Nazwa Opis
Capture()

Przechwytuje kontekst wykonywania z bieżącego wątku.

CreateCopy()

Tworzy kopię bieżącego kontekstu wykonywania.

Dispose()

Zwalnia wszystkie zasoby używane przez bieżące wystąpienie ExecutionContext klasy.

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetObjectData(SerializationInfo, StreamingContext)

Ustawia określony SerializationInfo obiekt z informacjami o kontekście logicznym wymaganymi do ponownego utworzenia wystąpienia bieżącego kontekstu wykonywania.

GetType()

Type Pobiera wartość bieżącego wystąpienia.

(Odziedziczone po Object)
IsFlowSuppressed()

Wskazuje, czy przepływ kontekstu wykonywania jest obecnie pomijany.

MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
RestoreFlow()

Przywraca przepływ kontekstu wykonywania w wątkach asynchronicznych.

Run(ExecutionContext, ContextCallback, Object)

Uruchamia metodę w określonym kontekście wykonywania w bieżącym wątku.

SuppressFlow()

Pomija przepływ kontekstu wykonywania w wątkach asynchronicznych.

ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)

Dotyczy