Programación paralela en .NET Framework
Muchos equipos y estaciones de trabajo tienen dos o cuatro núcleos (es decir, CPU) que permiten ejecutar varios subprocesos simultáneamente. Se espera que los equipos en un futuro cercano tengan significativamente más núcleos. Para aprovecharse del hardware de hoy y del mañana, 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 2010 y .NET Framework 4 mejoran la compatibilidad para la programación paralela proporcionando un nuevo runtime, nuevos tipos de biblioteca de clases y nuevas herramientas de diagnóstico. Estas características simplifican el desarrollo en paralelo, de modo que pueda 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 Framework 4.
Temas relacionados
Tecnología |
Descripción |
---|---|
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. |
|
Una implementación paralela de LINQ to Objects que significativamente mejora el rendimiento en muchos casos. |
|
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. |
|
Proporciona vínculos a documentación sobre las ventanas de depurador de Visual Studio para las tareas y las pilas paralelas y Visualizador de simultaneidad, que está compuesto de un conjunto de vistas en el Generador de perfiles de Visual Studio Application Lifecycle Management que puede utilizar para depurar y ajustar el rendimiento de código paralelo. |
|
Describe cómo funcionan los particionadores y cómo configurar particionadores predeterminados o crear nuevos. |
|
Describe el rol de la clase System.Threading.Tasks.TaskFactory. |
|
Describe cómo funcionan los programadores y cómo se pueden configurar los programadores predeterminados. |
|
Proporciona información general sobre expresiones lambda en C# y Visual Basic, y presenta cómo se utilizan en PLINQ y Task Parallel Library. |
|
Proporciona vínculos a documentación adicional y recursos de ejemplo sobre programación paralela en .NET Framework. |
|
Nodo de nivel superior para los temas avanzados como subprocesos y programación paralela. |