Compartir vía


System.Threading Espacio de nombres

Proporciona clases e interfaces que habilitan la programación multiproceso. Además de las clases para la sincronización de actividades de subprocesos y el acceso a datos (Mutex, Monitor, Interlocked, AutoResetEvent, etc.), este espacio de nombres incluye una clase ThreadPool que permite usar un grupo de subprocesos suministrados por el sistema y una clase Timer que ejecuta métodos de devolución de llamada en subprocesos del grupo de subprocesos.

Clases

AbandonedMutexException

Excepción que se produce cuando un subproceso adquiere un objeto Mutex que otro subproceso ha abandonado al salir sin liberarlo.

AsyncLocal<T>

Representa datos ambiente locales de un flujo de control asincrónico determinado, por ejemplo, un método asincrónico.

AutoResetEvent

Representa un evento de sincronización de subprocesos que, cuando se señala, libera un único subproceso en espera y, a continuación, se restablece automáticamente. No se puede heredar esta clase.

Barrier

Habilita varias tareas para que colaboren en un algoritmo en paralelo en varias fases.

BarrierPostPhaseException

La excepción que se inicia cuando se produce un error en la acción posterior a la fase de Barrier.

CancellationTokenSource

Señala un objeto CancellationToken que debe cancelarse.

CompressedStack

Proporciona métodos para la configuración y captura de la pila comprimida en el subproceso actual. Esta clase no puede heredarse.

CountdownEvent

Representa una primitiva de sincronización que está señalada cuando su recuento alcanza el valor cero.

EventWaitHandle

Representa un evento de sincronización de subprocesos.

EventWaitHandleAcl

Proporciona un método de extensión específico de Windows para crear objetos EventWaitHandle con seguridad de la lista de control de acceso (ACL) específica.

ExecutionContext

Administra el contexto de ejecución para el subproceso actual. Esta clase no puede heredarse.

HostExecutionContext

Encapsula y difunde el contexto de ejecución del host en todos los subprocesos.

HostExecutionContextManager

Proporciona la funcionalidad que permite que un host de Common Language Runtime participe en el flujo, o migración, del contexto de ejecución.

Interlocked

Proporciona operaciones atómicas para las variables compartidas por varios subprocesos.

LazyInitializer

Proporciona rutinas de inicialización diferida.

Lock

Proporciona un mecanismo para lograr la exclusión mutua en regiones de código entre diferentes subprocesos.

LockRecursionException

Excepción que se inicia cuando la entrada recursiva en un bloqueo no es compatible con la directiva de recursión del bloqueo.

ManualResetEvent

Representa un evento de sincronización de subprocesos que, cuando se señale, se debe restablecer manualmente. Esta clase no puede heredarse.

ManualResetEventSlim

Representa un evento de sincronización de subprocesos que, cuando se señale, se debe restablecer manualmente. Esta clase es una alternativa ligera a ManualResetEvent.

Monitor

Proporciona un mecanismo que sincroniza el acceso a los objetos.

Mutex

Primitiva de sincronización que puede usarse también para la sincronización entre procesos.

MutexAcl

Proporciona un método de extensión específico de Windows para crear objetos Mutex con seguridad de la lista de control de acceso (ACL) específica.

Overlapped

Proporciona una representación administrada de una estructura OVERLAPPED de Win32, incluidos los métodos para transferir información de una instancia Overlapped a una estructura NativeOverlapped.

PeriodicTimer

Proporciona un temporizador periódico que permite esperar de forma asincrónica para los tics del temporizador.

PreAllocatedOverlapped

Representa el estado preasignado para las operaciones de E/S superpuestas nativas.

ReaderWriterLock

Define un bloqueo que admite un escritor y varios lectores.

ReaderWriterLockSlim

Representa un bloqueo que se utiliza para administrar el acceso a un recurso y que permite varios subprocesos para la lectura o acceso exclusivo para la escritura.

RegisteredWaitHandle

Representa un identificador que se registró al llamar a RegisterWaitForSingleObject(WaitHandle, WaitOrTimerCallback, Object, UInt32, Boolean). Esta clase no puede heredarse.

Semaphore

Limita el número de subprocesos que pueden tener acceso a un recurso o grupo de recursos simultáneamente.

SemaphoreAcl

Proporciona un método de extensión específico de Windows para crear objetos Semaphore con seguridad de la lista de control de acceso (ACL) específica.

SemaphoreFullException

Excepción que se produce cuando se llama al método Release en un semáforo cuyo recuento ya se encuentra en el máximo.

SemaphoreSlim

Representa una alternativa ligera a Semaphore que limita el número de subprocesos que pueden tener acceso a un recurso o grupo de recursos simultáneamente.

SynchronizationContext

Proporciona la funcionalidad básica para difundir un contexto de sincronización en varios modelos de sincronización.

SynchronizationLockException

Excepción que se produce cuando un método requiere que el llamador sea propietario del bloqueo en un Monitor dado y un llamador al que no pertenece ese bloqueo llama al método.

Thread

Crea y controla un subproceso, establece su prioridad y obtiene su estado.

ThreadAbortException

Excepción que se produce cuando se realiza una llamada al método Abort(Object). Esta clase no puede heredarse.

ThreadExceptionEventArgs

Proporciona datos para el evento ThreadException.

ThreadingAclExtensions

Proporciona métodos de extensión específicos de Windows para administrar los descriptores de seguridad de la lista de control de acceso (ACL) de EventWaitHandle, Mutex y Semaphore.

ThreadInterruptedException

Excepción que se produce cuando Thread se interrumpe mientras se encuentra en estado de espera.

ThreadLocal<T>

Proporciona almacenamiento local de los datos de un subproceso.

ThreadPool

Proporciona un grupo de subprocesos que pueden usarse para ejecutar tareas, exponer elementos de trabajo, procesar la E/S asincrónica, esperar en nombre de otros subprocesos y procesar temporizadores.

ThreadPoolBoundHandle

Representa un identificador de E/S que se enlaza al grupo de subprocesos de sistema y permite que los componentes de bajo nivel reciban notificaciones para operaciones de E/S asincrónicas.

ThreadStartException

Excepción que se produce cuando se produce un error en un subproceso administrado después de que se haya iniciado el subproceso del sistema operativo subyacente, pero antes de que el subproceso esté listo para ejecutar el código de usuario.

ThreadStateException

Excepción que se produce cuando un Thread es un ThreadState que no es válido para la llamada de método.

Timeout

Contiene las constantes que especifican intervalos de tiempo de espera infinitos. Esta clase no puede heredarse.

Timer

Proporciona un mecanismo para ejecutar un método en un subproceso del grupo de subprocesos en intervalos especificados. Esta clase no puede heredarse.

Volatile

Contiene los métodos para realizar operaciones de memoria volátil.

WaitHandle

Encapsula los objetos específicos del sistema operativo que esperan obtener un acceso exclusivo a los recursos compartidos.

WaitHandleCannotBeOpenedException

La excepción que se produce cuando se intenta abrir una exclusión mutua del sistema, un semáforo o un identificador de espera de eventos que no existe.

WaitHandleExtensions

Proporciona métodos útiles para trabajar con un controlador seguro para un identificador de espera.

Estructuras

AsyncFlowControl

Proporciona la funcionalidad para restaurar la migración, o el flujo, del contexto de ejecución entre los subprocesos.

AsyncLocalValueChangedArgs<T>

Clase que proporciona información de cambio de datos a las instancias AsyncLocal<T> que se registran para las notificaciones de cambios.

CancellationToken

Propaga la notificación de que las operaciones deberían cancelarse.

CancellationTokenRegistration

Representa un delegado de devolución de llamada que se ha registrado con un token CancellationToken.

Lock.Scope

Representa un Lock objeto que podría haberse escrito.

LockCookie

Define el bloqueo que implementa la semántica de un sistema de escritura y varios sistemas de lectura. Se trata de un tipo de valor.

NativeOverlapped

Proporciona un diseño explícito visible desde el código no administrado y que tendrá el mismo diseño que la estructura OVERLAPPED de Win32 con campos reservados adicionales al final.

SpinLock

Proporciona una primitiva de bloqueo de exclusión mutua donde un subproceso que intenta adquirir el bloqueo espera en un bucle y realiza comprobaciones repetidamente hasta que haya un bloqueo disponible.

SpinWait

Proporciona compatibilidad para la espera basada en ciclos.

Interfaces

IThreadPoolWorkItem

Representa un elemento de trabajo que ThreadPool puede ejecutar.

ITimer

Representa un temporizador que puede tener el tiempo de vencimiento y el período cambiado.

Enumeraciones

ApartmentState

Especifica el estado de apartamento de un Thread.

EventResetMode

Indica si un objeto EventWaitHandle se restablece automática o manualmente después de recibir una señal.

LazyThreadSafetyMode

Especifica cómo una instancia Lazy<T> sincroniza el acceso entre varios subprocesos.

LockRecursionPolicy

Especifica si el mismo subproceso puede entrar varias veces en un bloqueo.

ThreadPriority

Especifica la prioridad de programación de Thread.

ThreadState

Especifica los estados de ejecución de Thread.

Delegados

ContextCallback

Representa un método al que llamar dentro de un nuevo contexto.

IOCompletionCallback

Recibe el código de error, el número de bytes y el tipo de valor superpuesto cuando finaliza una operación de E/S en el grupo de subprocesos.

ParameterizedThreadStart

Representa el método que se ejecuta en Thread.

SendOrPostCallback

Representa el método al que hay que llamar cuando se va a enviar un mensaje a un contexto de sincronización.

ThreadExceptionEventHandler

Representa el método que controlará el evento ThreadException de Application.

ThreadStart

Representa el método que se ejecuta en Thread.

TimerCallback

Representa el método que controla las llamadas de un Timer.

WaitCallback

Representa un método de devolución de llamada que debe ejecutar un subproceso del grupo de subprocesos.

WaitOrTimerCallback

Representa un método al que se debe llamar cuando un WaitHandle está señalado o se agota su tiempo de espera.