Programación en paralelo en .NET: guía de la documentación

Muchos equipos y estaciones de trabajo personales tienen varios núcleos de CPU que permiten ejecutar múltiples subprocesos simultáneamente. Para aprovecharse del hardware, puede paralelizar el código para distribuir el trabajo entre varios procesadores.

En el pasado, la paralelización requería manipulación de bajo nivel de los subprocesos y bloqueos. Visual Studio y .NET mejoran la compatibilidad para la programación paralela proporcionando un tiempo de ejecución, tipos de biblioteca de clases y herramientas de diagnóstico. Estas características, que se presentaron en .NET Framework 4, simplifican el desarrollo en paralelo. Puede escribir código paralelo eficaz, específico y escalable de forma natural sin tener que trabajar directamente con subprocesos ni el bloque de subprocesos.

La siguiente ilustración proporciona una información general de alto nivel de la arquitectura de programación paralela en .NET.

Arquitectura de programación en paralelo de .NET

Tecnología Descripción
Biblioteca TPL Proporciona documentación para la clase System.Threading.Tasks.Parallel, que incluye versiones paralelas de For y bucles ForEach, y también para la clase System.Threading.Tasks.Task, que representa la manera preferida de expresar las operaciones asincrónicas.
Parallel LINQ (PLINQ) Una implementación paralela de LINQ to Objects que significativamente mejora el rendimiento en muchos casos.
Estructuras de datos para la programación paralela Proporciona vínculos a documentación sobre las clases de colección seguras para subprocesos, tipos de sincronización ligeros y tipos para la inicialización diferida.
Herramientas de diagnóstico paralelo Proporciona vínculos a documentación sobre las ventanas del depurador de Visual Studio para las tareas y pilas paralelas y para el visualizador de simultaneidad.
Particionadores personalizados para PLINQ y TPL Describe cómo funcionan los particionadores y cómo configurar particionadores predeterminados o crear nuevos.
Programadores de tareas Describe cómo funcionan los programadores y cómo se pueden configurar los programadores predeterminados.
Expresiones lambda en PLINQ y TPL Proporciona información general sobre expresiones lambda en C# y Visual Basic, y presenta cómo se utilizan en PLINQ y Task Parallel Library.
Información adicional Proporciona vínculos a información adicional y recursos de ejemplo para programación paralela en .NET.

Consulte también