Taakparallelbibliotheek (TPL)

De Task Parallel Library (TPL) is een set openbare typen en API's in de System.Threading en System.Threading.Tasks naamruimten. Het doel van de TPL is om ontwikkelaars productiever te maken door het proces van het toevoegen van parallelle uitvoering en gelijktijdigheid aan toepassingen te vereenvoudigen. De TPL schaalt dynamisch de mate van gelijktijdigheid om alle beschikbare processors het meest efficiƫnt te gebruiken. Daarnaast verwerkt de TPL de partitionering van het werk, de planning van threads op de ThreadPoolannuleringsondersteuning, statusbeheer en andere details op laag niveau. Met behulp van TPL kunt u de prestaties van uw code maximaliseren terwijl u zich richt op het werk dat uw programma is ontworpen om te bereiken.

In .NET Framework 4 is de TPL de voorkeurswijze om multithreaded en parallelle code te schrijven. Niet alle code is echter geschikt voor parallelle uitvoering. Als een lus bijvoorbeeld slechts een kleine hoeveelheid werk uitvoert voor elke iteratie of niet wordt uitgevoerd voor veel iteraties, kan de overhead van parallelle uitvoering ertoe leiden dat de code langzamer wordt uitgevoerd. Bovendien voegt parallellisatie, zoals elke code met meerderereads, complexiteit toe aan de uitvoering van uw programma. Hoewel de TPL multithreaded scenario's vereenvoudigt, raden we u aan basiskennis te hebben van threadingconcepten, zoals vergrendelingen, impasses en racevoorwaarden, zodat u de TPL effectief kunt gebruiken.

Title Beschrijving
Gegevensparallellisme Hierin wordt beschreven hoe u parallelle for en foreach lussen (For en For Each in Visual Basic) maakt.
Asynchrone programmering op basis van taken Hierin wordt beschreven hoe u impliciet taken maakt en uitvoert met behulp van Parallel.Invoke of expliciet met behulp van Task objecten rechtstreeks.
Gegevensstroom Beschrijft hoe u de gegevensstroomonderdelen in de TPL-gegevensstroombibliotheek gebruikt om meerdere bewerkingen te verwerken. Deze bewerkingen moeten met elkaar communiceren en gegevens verwerken zodra deze beschikbaar zijn.
Mogelijke valkuilen in gegevens- en taakparallellisme Beschrijft enkele veelvoorkomende valkuilen en hoe u ze kunt vermijden.
Parallelle LINQ (PLINQ) Hierin wordt beschreven hoe u gegevensparallelisme kunt bereiken met LINQ-query's.
Parallel programmeren Knooppunt op het hoogste niveau voor parallelle programmering van .NET.

Zie ook