Task Parallel Library (TPL)

Die Task Parallel Library (TPL) ist ein Satz von öffentlichen Typen und APIs im System.Threading- und System.Threading.Tasks-Namespace. Der Zweck der TPL ist es, die Produktivität der Entwickler zu erhöhen, indem das Hinzufügen von Parallelität und Nebenläufigkeit zu Anwendungen vereinfacht wird. Die TPL skaliert dynamisch den Grad der Parallelität, um alle verfügbaren Prozessoren effizient zu verwenden. Außerdem behandelt die TPL die Partitionierung der Arbeit, die Planung von Threads im ThreadPool, die Abbruchunterstützung, die Zustandsverwaltung und andere Details auf niedriger Ebene. Mithilfe der TPL können Sie die Leistung des Codes optimieren und sich auf die Arbeit konzentrieren, für die das Programm konzipiert wurde.

In .NET Framework 4 ist die TPL die bevorzugte Möglichkeit, Multithread- und parallelen Code zu schreiben. Allerdings eignet sich nicht jeder Code für die Parallelisierung. Wenn eine Schleife z. B. nur einen kleinen Teil der Arbeit in jeder Iteration ausführt oder für viele Iterationen nicht ausgeführt wird, kann der durch die Parallelisierung verursachte Mehraufwand die Ausführung des Codes verlangsamen. Darüber hinaus fügt die Parallelisierung wie jeder multithreadierte Code Ihrer Programmausführung Komplexität hinzu. Die TPL vereinfacht zwar Multithreadszenarien, Sie sollten jedoch Grundkenntnisse über Threadingkonzepte haben, z. B. Sperren, Deadlocks und Racebedingungen, damit Sie die TPL effektiv verwenden können.

Titel Beschreibung
Datenparallelität Beschreibt die Erstellung paralleler for- und foreach-Schleifen (For und For Each in Visual Basic).
Aufgabenbasierte asynchrone Programmierung Beschreibt, wie Sie Aufgaben implizit mit Parallel.Invoke oder explizit mit Task-Objekten erstellen und ausführen.
Dataflow (Datenfluss) Beschreibt, wie Sie die Datenflusskomponenten in der TPL-Datenflussbibliothek verwenden, um mehrere Vorgänge zu behandeln. Diese Vorgänge müssen miteinander kommunizieren und Daten verarbeiten, sobald sie verfügbar sind.
Potenzielle Fehler bei Daten- und Aufgabenparallelität Beschreibt einige allgemeine Fehler und Umgehungsstrategien.
Parallel LINQ (PLINQ) (Paralleles LINQ (PLINQ)) Beschreibt das Herstellen von Datenparallelität mit LINQ-Abfragen.
Parallele Programmierung Knoten der obersten Ebene für die parallele .NET-Programmierung.

Weitere Informationen