Compartir a través de


Task Parallel Library

La biblioteca TPL (Task Parallel Library, biblioteca de procesamiento paralelo basado en tareas) es un conjunto de API y tipos públicos de los espacios de nombres System.Threading.Tasks y System.Threading de .NET Framework versión 4. El propósito de la biblioteca TPL es aumentar la productividad de los desarrolladores al simplificar el proceso de agregar paralelismo y simultaneidad a las aplicaciones. La biblioteca TPL escala el grado de simultaneidad de forma dinámica para usar más eficazmente todos los procesadores que están disponibles. Además, la TPL se encarga de la división del trabajo, la programación de los subprocesos en ThreadPool, la compatibilidad con la cancelación, la administración de los estados y otros detalles de bajo nivel. Al utilizar la TPL, el usuario puede optimizar el rendimiento del código mientras se centra en el trabajo para el que el programa está diseñado.

A partir de .NET Framework 4, la TPL es el modo preferido de escribir código paralelo y multiproceso. Sin embargo, no todo el código se presta para la paralelización; por ejemplo, si un bucle realiza solo una cantidad reducida de trabajo en cada iteración o no se ejecuta para un gran número de iteraciones, la sobrecarga de la paralelización puede dar lugar a una ejecución más lenta del código. Además, al igual que cualquier código multiproceso, la paralelización hace que la ejecución del programa sea más compleja. Aunque la TPL simplifica los escenarios de multithreading, recomendamos tener conocimientos básicos sobre conceptos de subprocesamiento, por ejemplo, bloqueos, interbloqueos y condiciones de carrera, para usar la TPL eficazmente. Para obtener más información sobre conceptos básicos de la computación paralela, vea Parallel Computer Developer Center en MSDN.

Temas relacionados

Título

Descripción

Paralelismo de datos (Task Parallel Library)

Describe cómo crear bucles for y foreach paralelos (For y For Each en Visual Basic).

Paralelismo de tareas (Task Parallel Library)

Describe cómo crear y ejecutar tareas implícitamente mediante Parallel.Invoke o explícitamente usando objetos Task directamente.

TPL con otros modelos asincrónicos

Describe cómo utilizar la TPL con otros modelos asincrónicos de .NET.

Problemas potenciales en el paralelismo de datos y tareas

Describe algunos problemas comunes y cómo evitarlos.

Parallel LINQ (PLINQ)

Describe cómo lograr el paralelismo de datos con consultas LINQ.

Programación paralela en .NET Framework

Nodo de nivel superior de la programación en paralelo de .NET.