ExecutionContext ExecutionContext ExecutionContext ExecutionContext Class

Definición

Administra el contexto de ejecución del subproceso actual.Manages the execution context for the current thread. Esta clase no puede heredarse.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
Herencia
ExecutionContextExecutionContextExecutionContextExecutionContext
Atributos
Implementaciones

Comentarios

La ExecutionContext clase proporciona un único contenedor para toda la información relevante para un subproceso lógico de ejecución.The ExecutionContext class provides a single container for all information relevant to a logical thread of execution. Esto incluye el contexto de seguridad, el contexto de llamada y contexto de sincronización.This includes security context, call context, and synchronization context.

La ExecutionContext clase proporciona la funcionalidad para el código de usuario capturar y transferir este contexto por puntos asincrónicos definido por el usuario.The ExecutionContext class provides the functionality for user code to capture and transfer this context across user-defined asynchronous points. Common language runtime garantiza que el ExecutionContext se transfiere de forma coherente por puntos asincrónicos definido por el tiempo de ejecución dentro del proceso administrado.The common language runtime ensures that the ExecutionContext is consistently transferred across runtime-defined asynchronous points within the managed process.

Un contexto de ejecución es el equivalente administrado de un apartamento COM.An execution context is the managed equivalent of a COM apartment. Dentro de un dominio de aplicación, se debe transferir el contexto de ejecución completo cada vez que se transfiere un subproceso.Within an application domain, the entire execution context must be transferred whenever a thread is transferred. Esta situación se produce durante las transferencias realizadas por el Thread.Start serializar a través de la bomba de mensajes de Windows de subprocesos de Windows Forms, la mayoría de las operaciones de grupo de subprocesos y de método.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. No se produce en las operaciones de grupo de subprocesos no seguras (como el UnsafeQueueUserWorkItem método), que no transfieren de la pila comprimida.It does not occur in unsafe thread pool operations (such as the UnsafeQueueUserWorkItem method), which do not transfer the compressed stack. Siempre que sea la pila comprimida fluye, la entidad de seguridad administrada, sincronización, configuración regional y el contexto de usuario también fluyen.Wherever the compressed stack flows, the managed principal, synchronization, locale, and user context also flow. El ExecutionContext clase proporciona el Capture y CreateCopy métodos para obtener el contexto de ejecución y el Run método para establecer el contexto de ejecución del subproceso actual.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 que está asociado con un subproceso no puede establecerse en otro subproceso.An ExecutionContext that is associated with a thread cannot be set on another thread. Intenta hacer esto, se producirá una excepción producida.Attempting to do so will result in an exception being thrown. Para propagar el ExecutionContext desde un subproceso a otro, realice una copia de la ExecutionContext.To propagate the ExecutionContext from one thread to another, make a copy of the ExecutionContext.

Internamente, el ExecutionContext almacena todos los datos que está asociados el LogicalCallContext.Internally, the ExecutionContext stores all data that is associated with the LogicalCallContext. Esto permite la LogicalCallContext datos que se propaguen cuando el ExecutionContext se copian y se transfiere.This allows the LogicalCallContext data to be propagated when the ExecutionContext is copied and transferred.

Métodos

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

Captura el contexto de ejecución del subproceso actual.Captures the execution context from the current thread.

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

Crea una copia del contexto de ejecución actual.Creates a copy of the current execution context.

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

Libera todos los recursos usados por la instancia actual de la clase ExecutionContext.Releases all resources used by the current instance of the ExecutionContext class.

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

Determina si el objeto especificado es igual al objeto actual.Determines whether the specified object is equal to the current object.

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

Sirve como la función hash predeterminada.Serves as the default hash function.

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

Establece el objeto SerializationInfo especificado con la información de contexto lógica necesaria para volver a crear una instancia del contexto de ejecución actual.Sets the specified SerializationInfo object with the logical context information needed to recreate an instance of the current execution context.

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

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

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

Indica si el flujo del contexto de ejecución está suprimido en este momento.Indicates whether the flow of the execution context is currently suppressed.

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

Crea una copia superficial del objeto Object actual.Creates a shallow copy of the current Object.

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

Restaura el flujo del contexto de ejecución entre subprocesos asincrónicos.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)

Ejecuta un método en un contexto de ejecución especificado en el subproceso actual.Runs a method in a specified execution context on the current thread.

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

Suprime el flujo del contexto de ejecución entre subprocesos asincrónicos.Suppresses the flow of the execution context across asynchronous threads.

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

Devuelve una cadena que representa el objeto actual.Returns a string that represents the current object.

(Inherited from Object)

Se aplica a