Principios básicos del subprocesamiento administrado

Los cinco primeros artículos de esta sección están diseñados para ayudarle a determinar cuándo usar un subproceso administrado y para explicar algunas características básicas. Para obtener información sobre las clases que proporcionan características adicionales, vea Objetos y características de subprocesos e Información general sobre los primitivos de sincronización.

En el resto de los artículos de esta sección se describen temas más avanzados, incluida la interacción del subproceso administrado con el sistema operativo Windows.

Nota

A partir de .NET Framework 4, la biblioteca TPL y PLINQ proporcionan API para el paralelismo de tareas y datos en programas multiproceso. Para más información, consulte Programación en paralelo.

En esta sección

Subprocesos y subprocesamiento
Se explican las ventajas y desventajas de varios subprocesos y se describen los escenarios en los que puede crear subprocesos o utilizar subprocesos del grupo de subprocesos.

Excepciones en subprocesos administrados
Se describe el comportamiento de las excepciones no controladas en subprocesos de distintas versiones de .NET, en concreto las situaciones que pueden provocar la finalización de la aplicación.

Sincronizar datos para subprocesamiento múltiple
Se describen las estrategias de sincronización de datos en las clases que se utilizarán con varios subprocesos.

Subprocesos de primer y segundo plano
Se explican las diferencias entre los subprocesos en primer y segundo plano.

Subprocesamiento administrado y no administrado en Windows
Se describe la relación entre subprocesos administrados y no administrados, se enumeran los administrados equivalentes para las API de subprocesos de Windows y se describe la interacción entre apartamentos COM y subprocesos administrados.

Almacenamiento local para el subproceso: Campos estáticos relacionados con subprocesos y ranuras de datos
Se describen los mecanismos de almacenamiento relacionados con subprocesos.

Referencia

Thread Proporciona documentación de referencia para la clase Thread, que representa un subproceso administrado, independientemente de que provenga de código no administrado o que se creara en una aplicación administrada.

BackgroundWorker Proporciona una manera segura de implementar multithreading junto con objetos de interfaz de usuario.

Información general sobre las primitivas de sincronización
Se describen las clases administradas utilizadas para sincronizar las actividades de varios subprocesos.

Procedimientos recomendados para el subprocesamiento administrado
Se describen los problemas comunes con multithreading y las estrategias para evitar problemas.

Programación en paralelo
Se describe la biblioteca TPL y PLINQ, que simplifican considerablemente el trabajo de crear aplicaciones de .NET asincrónicas y multiproceso.

Biblioteca System.Threading.Channels
Describe la biblioteca System.Threading.Channels, que proporciona un conjunto de estructuras de datos de sincronización para pasar datos entre productores y consumidores de forma asincrónica.