Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
TPL (Task Parallel Library) är en uppsättning offentliga typer och API:er i System.Threading namnrymderna och System.Threading.Tasks . Syftet med TPL är att göra utvecklare mer produktiva genom att förenkla processen med att lägga till parallellitet och samtidighet i program. TPL skalar dynamiskt graden av samtidighet för att använda alla tillgängliga processorer mest effektivt. Dessutom hanterar TPL partitioneringen av arbetet, schemaläggningen av trådar på ThreadPool, annulleringsstöd, tillståndshantering och andra detaljer på låg nivå. Med hjälp av TPL kan du maximera kodens prestanda samtidigt som du fokuserar på det arbete som programmet är utformat för att utföra.
I .NET Framework 4 är TPL det bästa sättet att skriva flertrådad och parallell kod. All kod är dock inte lämplig för parallellisering. Om en loop till exempel bara utför en liten mängd arbete på varje iteration, eller om den inte körs för många iterationer, kan parallelliseringskostnaderna göra att koden körs långsammare. Dessutom ökar parallellisering, precis som all kod med flera gångar, komplexiteten i programkörningen. Även om TPL förenklar flertrådade scenarier rekommenderar vi att du har en grundläggande förståelse för trådbegrepp, till exempel lås, dödlägen och konkurrensförhållanden, så att du kan använda TPL effektivt.
Relaterade artiklar
Titel | Beskrivning |
---|---|
dataparallellitet | Beskriver hur du skapar parallella for och foreach loopar (For och For Each i Visual Basic). |
Aktivitetsbaserad asynkron programmering | Beskriver hur du skapar och kör arbetsuppgifter implicit genom att använda Parallel.Invoke direkt eller explicit genom att använda Task-objekt direkt. |
Dataflöde | Beskriver hur du använder dataflödeskomponenterna i TPL-dataflödesbiblioteket för att hantera flera åtgärder. Dessa åtgärder måste kommunicera med varandra och bearbeta data när de blir tillgängliga. |
Potentiella fallgropar i data och uppgiftsparallellitet | Beskriver några vanliga fallgropar och hur du undviker dem. |
Parallell LINQ (PLINQ) | Beskriver hur du uppnår dataparallellitet med LINQ-frågor. |
Parallell programmering | Nod på översta nivån för parallell .NET-programmering. |