Freigeben über


Task Parallel Library (TPL)

Die Task Parallel Library (TPL) ist eine Bibliothek öffentlicher Typen und APIs in den System.Threading und System.Threading.Tasks Namensräumen. Der Zweck der TPL besteht darin, Entwickler produktiver zu machen, indem der Prozess, Parallelität und Nebenläufigkeit zu Anwendungen hinzuzufügen, vereinfacht wird. Die TPL skaliert dynamisch den Grad der Parallelität, um alle verfügbaren Prozessoren am effizientesten 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 von TPL können Sie die Leistung Ihres Codes maximieren und sich dabei auf die Arbeit konzentrieren, die Ihr Programm zu erreichen hat.

In .NET Framework 4 ist die TPL die bevorzugte Methode zum Schreiben von Multithread- und parallelen Code. Nicht der gesamte Code eignet sich jedoch für die Parallelisierung. Wenn eine Schleife z. B. nur eine kleine Menge Arbeit für jede Iteration ausführt oder sie nicht für viele Iterationen ausgeführt wird, kann der Mehraufwand der Parallelisierung dazu führen, dass der Code langsamer ausgeführt wird. Darüber hinaus fügt die Parallelisierung, wie jeder Multithread-Code, ihrer Programmausführung Komplexität hinzu. Obwohl die TPL Multithread-Szenarien vereinfacht, empfehlen wir Ihnen, ein grundlegendes Verständnis von Threading-Konzepten zu haben, z. B. Sperren, Deadlocks und Race-Bedingungen, damit Sie die TPL effektiv verwenden können.

Titel BESCHREIBUNG
Datenparallelität Beschreibt, wie Parallele for und foreach Schleifen (For und For Each in Visual Basic) erstellt werden.
Aufgabenbasierte asynchrone Programmierung Beschreibt, wie Aufgaben implizit mithilfe Parallel.Invoke oder explizit mithilfe von Task Objekten erstellt und ausgeführt werden.
Dataflow- Beschreibt, wie die Datenflusskomponenten in der TPL-Datenflussbibliothek verwendet werden, um mehrere Vorgänge zu verarbeiten. Diese Vorgänge müssen miteinander kommunizieren und Daten verarbeiten, sobald sie verfügbar sind.
Potenzielle Fallstricke in Daten und Task-Parallelität Beschreibt einige häufige Fallstricke und wie sie vermieden werden.
Parallel LINQ (PLINQ) Beschreibt, wie Datenparallelität mit LINQ-Abfragen erreicht wird.
parallele Programmierung Knoten der obersten Ebene für die parallele .NET-Programmierung.

Siehe auch