Compartilhar via


Biblioteca Paralela de Tarefas (TPL)

A Biblioteca Paralela de Tarefas (TPL) é um conjunto de tipos públicos e APIs nos namespaces System.Threading e System.Threading.Tasks. A finalidade do TPL é tornar os desenvolvedores mais produtivos simplificando o processo de adição de paralelismo e simultaneidade aos aplicativos. O TPL dimensiona dinamicamente o grau de simultaneidade para usar todos os processadores disponíveis com mais eficiência. Além disso, o TPL lida com o particionamento do trabalho, o agendamento de threads no ThreadPool, o suporte a cancelamentos, o gerenciamento de estado e outros detalhes de baixo nível. Usando tpl, você pode maximizar o desempenho do seu código enquanto se concentra no trabalho que seu programa foi projetado para realizar.

No .NET Framework 4, o TPL é a maneira preferencial de escrever código multithreaded e paralelo. No entanto, nem todo código é adequado para paralelização. Por exemplo, se um loop executar apenas uma pequena quantidade de trabalho em cada iteração ou não for executado para muitas iterações, a sobrecarga de paralelização poderá fazer com que o código seja executado mais lentamente. Além disso, a paralelização, como qualquer código multithreaded, adiciona complexidade à execução do programa. Embora o TPL simplifique cenários multithread, recomendamos ter uma compreensão básica dos conceitos de threading, por exemplo, bloqueios, deadlocks e condições de corrida, para que você possa usá-lo com eficiência.

Título Descrição
Paralelismo de Dados Descreve como criar for paralelo e loops foreach (For e For Each no Visual Basic).
Programação assíncrona baseada em tarefa Descreve como criar e executar tarefas implicitamente usando Parallel.Invoke ou explicitamente usando Task objetos diretamente.
de fluxo de dados Descreve como usar os componentes de fluxo de dados na Biblioteca de Fluxo de Dados TPL para lidar com várias operações. Essas operações devem se comunicar entre si e processar dados à medida que ficam disponíveis.
Possíveis armadilhas no paralelismo de dados e tarefas Descreve algumas armadilhas comuns e como evitá-las.
LINQ paralelo (PLINQ) Descreve como obter paralelismo de dados com consultas LINQ.
Programação Paralela Nó de nível superior para programação paralela .NET.

Consulte também