Udostępnij za pośrednictwem


Biblioteka zadań równoległych (TPL)

Biblioteka równoległa zadań (TPL) to zestaw typów publicznych i interfejsów API w przestrzeniach nazw System.Threading i System.Threading.Tasks. Celem TPL jest zwiększenie produktywności deweloperów przez uproszczenie procesu dodawania równoległości i współbieżności do aplikacji. Technologia TPL dynamicznie skaluje stopień współbieżności w celu najbardziej wydajnego używania wszystkich dostępnych procesorów. Ponadto TPL obsługuje partycjonowanie pracy, planowanie wątków w systemie ThreadPool, obsługę anulowania, zarządzanie stanem i inne szczegóły niskiego poziomu. Korzystając z języka TPL, można zmaksymalizować wydajność kodu, koncentrując się na pracy, którą program ma wykonać.

W programie .NET Framework 4 preferowanym sposobem na pisanie kodu wielowątkowego i równoległego jest TPL. Jednak nie cały kod jest odpowiedni do przetwarzania równoległego. Jeśli na przykład pętla wykonuje tylko niewielką ilość pracy na każdej iteracji lub nie jest uruchamiana dla wielu iteracji, obciążenie związane z równoległością może spowodować, że kod działa wolniej. Ponadto równoległość, podobnie jak każdy kod wielowątkowy, zwiększa złożoność wykonywania programu. Chociaż TPL upraszcza scenariusze wielowątkowe, zalecamy podstawową wiedzę na temat pojęć wątkowych, na przykład blokad, zakleszczeń i warunków wyścigu, aby można było efektywnie korzystać z TPL.

Nazwa Opis
równoległość danych Opisuje sposób tworzenia równoległych for i foreach pętli (For i For Each w Visual Basic).
Programowanie asynchroniczne oparte na zadaniach Opisuje sposób tworzenia i uruchamiania zadań niejawnie przy użyciu Parallel.Invoke lub jawnie przy użyciu obiektów Task bezpośrednio.
Przepływ danych Opisuje sposób używania składników przepływu danych w bibliotece przepływów danych TPL do obsługi wielu operacji. Te operacje muszą komunikować się ze sobą i przetwarzać dane, gdy staną się dostępne.
Potencjalne pułapki w równoległości danych i zadań Opisuje niektóre typowe pułapki i sposób ich unikania.
Równoległe LINQ (PLINQ) Opisuje sposób osiągnięcia równoległości danych za pomocą zapytań LINQ.
Programowanie równoległe Główny węzeł dla programowania równoległego w platformie .NET.

Zobacz także