Microsoft.VisualStudio.Threading Espacio de nombres
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
El espacio de nombres de Microsoft.VisualStudio.Threading contiene API para usar en proyectos de Visual Studio SDK. Debe utilizar estas API para la programación asincrónica en Visual Studio. Esto le ayuda a evitar interbloqueos
Esta biblioteca se basa en Task Parallel Library (TPL) de .NET Framework. Para obtener información sobre esta biblioteca, vea Biblioteca paralela de tareas (TPL).
Clases
AsyncAutoResetEvent |
Una implementación asincrónica de autoResetEvent. |
AsyncBarrier |
Una barrera asincrónica que bloquea el señalización hasta que todos los demás participantes hayan señalado. |
AsyncCountdownEvent |
Evento de cuenta atrás de estilo asincrónico. |
AsyncCrossProcessMutex |
Exclusión mutua que se puede introducir de forma asincrónica. |
AsyncLazy<T> |
Generador de valor seguro para subprocesos evaluado de forma asincrónica y diferida. |
AsyncLazyInitializer |
Ejecuta de forma diferido un delegado que tiene algún efecto secundario (normalmente inicializando algo) de modo que el delegado se ejecuta como máximo una vez. |
AsyncLocal<T> |
Almacena referencias de modo que estén disponibles para su recuperación en el mismo contexto de llamada. |
AsyncManualResetEvent |
Un tipo de ManualResetEvent que se puede esperar de forma asincrónica. |
AsyncQueue<T> |
Cola segura para subprocesos que se puede retirar de forma asincrónica. |
AsyncReaderWriterLock |
Bloqueo sin bloqueo que permite el acceso simultáneo, el acceso exclusivo o la capacidad de actualización al acceso exclusivo. |
AsyncReaderWriterLock.Awaiter |
Administra el acceso asincrónico a un bloqueo. |
AsyncReaderWriterResourceLock<TMoniker,TResource> |
Bloqueo sin bloqueos que permite el acceso simultáneo, el acceso exclusivo o simultáneo con capacidad de actualización al acceso exclusivo, creando los permisos especiales para recursos que deben estar preparados para el acceso simultáneo o exclusivo. |
AsyncSemaphore |
Una clase asincrónica SemaphoreSlim como con una sintaxis de versión más cómoda. |
AwaitExtensions |
Métodos de extensión y awaitables para .NET 4.5. |
CancellationTokenExtensions |
Extensiones para CancellationToken. |
DelegatingJoinableTaskFactory |
Clase base de JoinableTaskFactory para tipos derivados que delegan parte del trabajo a una instancia existente. |
DispatcherExtensions |
Métodos de extensión para WPF Dispatcher para una mejor interoperabilidad con JoinableTaskFactory. |
HangReportContribution |
Contribución a un informe de bloqueo agregado. |
IllegalSemaphoreUsageException |
Excepción que se produce cuando se infringe el contrato de .ReentrantSemaphore |
JoinableTask |
Realiza un seguimiento de las operaciones asincrónicas y proporciona la capacidad de unir esas operaciones para evitar interbloqueos mientras bloquea sincrónicamente el subproceso main para la finalización de la operación. |
JoinableTask<T> |
Realiza un seguimiento de las operaciones asincrónicas y proporciona la capacidad de unir esas operaciones para evitar interbloqueos mientras bloquea sincrónicamente el subproceso main para la finalización de la operación. |
JoinableTaskCollection |
Colección de objetos incompletos JoinableTask . |
JoinableTaskContext |
Un contexto común en el que las tareas joinable se pueden crear e interactuar para evitar interbloqueos. |
JoinableTaskContext.HangDetails |
Clase para encapsular los detalles de un posible bloqueo. Se pasará una instancia de esta JoinableTaskContext.HangDetails clase a las JoinableTaskContextNode instancias que registraron las notificaciones de bloqueo. |
JoinableTaskContextException |
Se produce una excepción cuando la configuración proporcionada a JoinableTaskContext son incorrectas o se invalida un método virtual de modo que infringe un contrato. Esta excepción no se debe detectar. Se produce cuando la aplicación tiene un error de programación. |
JoinableTaskContextNode |
Origen personalizable de instancias de JoinableTaskFactory. |
JoinableTaskFactory |
Generador para iniciar las tareas asincrónicas que pueden mitigar interbloqueos cuando las tareas requieren el subproceso principal de una aplicación y el subproceso principal puede estar bloqueando la finalización de una tarea. |
NoMessagePumpSyncContext |
SynchronizationContext cuyo método Wait bloquea sincrónicamente no permite ninguna reentrada a través de la bomba de mensajes. |
NonConcurrentSynchronizationContext |
que SynchronizationContext ejecuta los mensajes en el orden en que se reciben. |
ProgressWithCompletion<T> |
Mecanismo de notificación de progreso incremental que también permite la espera asincrónica para todos los informes que se van a procesar. |
ReentrantSemaphore |
Semáforo JoinableTaskFactorycompatible que permite la reentrada sin consumir otra ranura en el semáforo. |
SemaphoreFaultedException |
Excepción que se produce cuando un ReentrantSemaphore objeto está en un estado con errores. |
SingleThreadedSynchronizationContext |
Un contexto de sincronización de un solo subproceso, similar a DispatcherSynchronizationContext y WindowsFormsSynchronizationContext. |
SingleThreadedSynchronizationContext.Frame |
Un marco de bombeo de mensajes que se puede insertar con PushFrame(SingleThreadedSynchronizationContext+Frame) para bombear mensajes en el subproceso propietario. |
ThreadingTools |
Métodos de utilidad para recorrer a los subprocesos. |
TplExtensions |
Extensiones a la biblioteca TPL (Task Parallel Library, biblioteca de procesamiento paralelo basado en tareas). |
Estructuras
AsyncCrossProcessMutex.LockReleaser |
Valor devuelto de EnterAsync(TimeSpan) que se debe eliminar para liberar la exclusión mutua. |
AsyncLazy<T>.RevertRelevance |
Estructura que oculta la relevancia de un bloque de código de un determinado AsyncLazy<T> y con el JoinableTaskContext que se creó. |
AsyncReaderWriterLock.Awaitable |
Un objeto que admite await devuelto de solicitudes de bloqueo asincrónico. |
AsyncReaderWriterLock.LockHandle |
Representación “pública” de un bloqueo específico. |
AsyncReaderWriterLock.Releaser |
Valor cuya eliminación libera un bloqueo retenido. |
AsyncReaderWriterLock.Suppression |
Valor cuya eliminación restaura la visibilidad de cualquier bloqueo que tiene el llamador. |
AsyncReaderWriterResourceLock<TMoniker,TResource>.ResourceAwaitable |
Un objeto que admite await devuelto de solicitudes de bloqueo asincrónico. |
AsyncReaderWriterResourceLock<TMoniker,TResource>.ResourceAwaiter |
Administra el acceso asincrónico a un bloqueo. |
AsyncReaderWriterResourceLock<TMoniker,TResource>.ResourceReleaser |
Valor cuya eliminación libera un bloqueo retenido. |
AsyncSemaphore.Releaser |
Valor cuya eliminación desencadena la liberación de un bloqueo. |
AwaitExtensions.AggregateExceptionAwaitable |
Resultado de ConfigureAwaitForAggregateException(Task, Boolean) preparar un objeto Task que se esperará al iniciarse con todas las excepciones internas. |
AwaitExtensions.AggregateExceptionAwaiter |
Resultado de GetAwaiter() preparar un objeto Task que se esperará al iniciarse con todas las excepciones internas. |
AwaitExtensions.ConfiguredTaskYieldAwaitable |
Un elemento awaitable que siempre llevará al método asincrónico que realiza la llamada para producir y, a continuación, reanudar inmediatamente, posiblemente en el original SynchronizationContext. |
AwaitExtensions.ConfiguredTaskYieldAwaiter |
Un awaiter que siempre llevará al método asincrónico que realiza la llamada para producir y, a continuación, reanudar inmediatamente, posiblemente en el original SynchronizationContext. |
AwaitExtensions.ExecuteContinuationSynchronouslyAwaitable |
Tarea esperada que tiene afinidad con la ejecución de devoluciones de llamada de forma sincrónica en la pila de llamadas completa. |
AwaitExtensions.ExecuteContinuationSynchronouslyAwaitable<T> |
Tarea esperada que tiene afinidad con la ejecución de devoluciones de llamada de forma sincrónica en la pila de llamadas completa. |
AwaitExtensions.ExecuteContinuationSynchronouslyAwaiter |
Un awaiter de tarea que tiene afinidad con la ejecución de devoluciones de llamada de forma sincrónica en la pila de llamadas completa. |
AwaitExtensions.ExecuteContinuationSynchronouslyAwaiter<T> |
Un awaiter de tarea que tiene afinidad con la ejecución de devoluciones de llamada de forma sincrónica en la pila de llamadas completa. |
AwaitExtensions.SynchronizationContextAwaiter |
Un awaiter devuelto desde GetAwaiter(SynchronizationContext). |
AwaitExtensions.TaskSchedulerAwaitable |
Un objeto que admite await que ejecuta continuaciones en el programador de tareas especificado. |
AwaitExtensions.TaskSchedulerAwaiter |
Un awaiter devuelto desde GetAwaiter(TaskScheduler). |
CancellationTokenExtensions.CombinedCancellationToken |
Proporciona acceso a un CancellationToken objeto que combina varios otros tokens y permite la eliminación cómoda de cualquier aplicación aplicable CancellationTokenSource. |
JoinableTaskCollection.JoinRelease |
Valor cuya eliminación cancela una operación Join() . |
JoinableTaskContext.RevertRelevance |
Estructura que borra callContext y SynchronizationContext estáticas asincrónicas o subprocesos y restaura esos valores cuando se elimina esta estructura. |
JoinableTaskFactory.MainThreadAwaitable |
Un struct que admite await que facilita una transición asincrónica al subproceso principal. |
JoinableTaskFactory.MainThreadAwaiter |
Estructura awaiter que facilita una transición asincrónica al subproceso main. |
JoinableTaskInternals.JoinableTaskToken |
El espacio de nombres de Microsoft.VisualStudio.Threading contiene API para usar en proyectos de Visual Studio SDK. Debe utilizar estas API para la programación asincrónica en Visual Studio. Esto le ayuda a evitar interbloqueos Esta biblioteca se basa en Task Parallel Library (TPL) de .NET Framework. Para obtener información sobre esta biblioteca, vea Biblioteca paralela de tareas (TPL). |
ReentrantSemaphore.RevertRelevance |
Estructura que oculta cualquier evidencia que el autor de la llamada haya escrito hasta ReentrantSemaphore que se elimine este valor. |
SpecializedSyncContext |
Estructura que aplica y revierte cambios en SynchronizationContext. |
TplExtensions.NoThrowTaskAwaitable |
Un objeto que admite await que contiene una tarea y nunca produce una excepción cuando se espera. |
TplExtensions.NoThrowTaskAwaiter |
Un awaiter que contiene una tarea y nunca produce una excepción cuando se espera. |
TplExtensions.NoThrowValueTaskAwaitable |
Un objeto que admite await que contiene una tarea y nunca produce una excepción cuando se espera. |
TplExtensions.NoThrowValueTaskAwaitable<TResult> |
Un objeto awaitable que encapsula y ValueTask<TResult> nunca produce una excepción cuando se espera. |
TplExtensions.NoThrowValueTaskAwaiter |
Un awaiter que contiene una tarea y nunca produce una excepción cuando se espera. |
TplExtensions.NoThrowValueTaskAwaiter<TResult> |
Un awaiter que contiene una tarea y nunca produce una excepción cuando se espera. |
Interfaces
IAsyncDisposable |
Define un método asincrónico para liberar los recursos asignados. |
IHangReportContributor |
Proporciona una capacidad de producir informes que puede resultar útil al analizar bloqueos. |
Enumeraciones
AsyncReaderWriterLock.LockFlags |
Marcas que modifican el comportamiento de bloqueo predeterminado. |
AsyncReaderWriterResourceLock<TMoniker,TResource>.LockFlags |
Marcas que modifican el comportamiento de bloqueo predeterminado. |
JoinableTaskCreationOptions |
Especifica las marcas que controlan el comportamiento opcional de la creación y ejecución de tareas. |
ReentrantSemaphore.ReentrancyMode |
Describe cómo ReentrantSemaphore se puede comportar cuando se realiza una solicitud de semáforo en un contexto que ya está en el semáforo. |
RegistryChangeNotificationFilters |
Los distintos tipos de datos dentro de una clave del Registro que generan notificaciones cuando cambian. |
Delegados
AsyncEventHandler |
Controlador de eventos.asincrónico. |
AsyncEventHandler<TEventArgs> |
Controlador de eventos.asincrónico. |