Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Knihovna úloh Task Parallel Library (TPL) je sada veřejných typů a API v oborech názvů System.Threading a System.Threading.Tasks. Účelem TPL je zvýšit produktivitu vývojářů zjednodušením procesu přidávání paralelismu a souběžnosti do aplikací. TPL dynamicky škáluje stupeň souběžnosti tak, aby používal všechny dostupné procesory nejefektivněji. Kromě toho TPL zpracovává dělení práce, plánování vláken na ThreadPool, podporu zrušení, správu stavu a další podrobnosti nízké úrovně. Pomocí TPL můžete maximalizovat výkon kódu a soustředit se na práci, kterou má program dosáhnout.
V rozhraní .NET Framework 4 je TPL upřednostňovaným způsobem psaní vícevláknového a paralelního kódu. Ne všechny kódy jsou ale vhodné pro paralelizaci. Pokud například smyčka provádí při každé iteraci jen malou část práce nebo neproběhne mnoho iterací, mohou náklady na paralelizaci způsobit, že kód poběží pomaleji. Paralelizace, stejně jako jakýkoliv vícevláknový kód, navíc zvyšuje složitost provádění programu. I když TPL zjednodušuje scénáře s více vlákny, doporučujeme, abyste měli základní znalosti o konceptech vláken, například zámky, zablokování a podmínky časování, abyste mohli efektivně používat TPL.
Související články
Titulek | Popis |
---|---|
Paralelismus dat | Popisuje, jak vytvořit paralelní smyčky for a foreach (For a For Each v jazyce Visual Basic). |
Asynchronní programování založené na úlohách | Popisuje, jak vytvářet a spouštět úlohy implicitně pomocí Parallel.Invoke objektů nebo explicitně pomocí Task objektů. |
Dataflow | Popisuje, jak používat komponenty toku dat v knihovně toku dat TPL ke zpracování více operací. Tyto operace musí vzájemně komunikovat a zpracovávat data, jakmile budou k dispozici. |
Potenciální nástrahy v datech a paralelismu úkolů | Popisuje některé běžné nástrahy a jak se jim vyhnout. |
Parallel LINQ (PLINQ) | Popisuje, jak dosáhnout paralelismu dat pomocí dotazů LINQ. |
Paralelní programování | Hlavní uzel pro .NET paralelní programování. |