Параллельное программирование в .NET. Руководство по документации
Многие персональные компьютеры и рабочие станции имеют несколько ядер ЦП, которые позволяют одновременно выполнять несколько потоков. Чтобы воспользоваться преимуществами оборудования, можно параллелизовать код для распределения работы между несколькими процессорами.
В прошлом распараллеливание требовало управления потоками и взаимоблокировками на низком уровне. Visual Studio и .NET обеспечивают расширенную поддержку параллельного программирования, предоставляя среду выполнения, типы библиотек классов и средства диагностики. Эти возможности, которые впервые появились в .NET Framework 4, упрощают параллельную разработку. Это позволяет разработчикам писать эффективный, детализированный и масштабируемый параллельный код с помощью естественных выразительных средств без необходимости непосредственной работы с потоками или пулом потоков.
На рисунке ниже представлен общий обзор архитектуры параллельного программирования в .NET.
См. также
Технология | Описание |
---|---|
Библиотека параллельных задач (TPL) | Предоставляет документацию для класса System.Threading.Tasks.Parallel, который содержит параллельные версии цикла For , цикла ForEach ; а также для класса System.Threading.Tasks.Task, который предоставляет предпочитаемый способ для выражения асинхронных операций. |
Parallel LINQ (PLINQ) | Параллельная реализация LINQ to Objects, которая значительно улучшает производительность во множестве сценариев. |
Структуры данных для параллельного программирования | Предоставляет ссылки на документацию для потокобезопасные классы коллекций, упрощенные типы синхронизации, типы для "ленивой" инициализации. |
Средства диагностики параллельного выполнения | Предоставляет ссылки на документацию для окон отладчика Visual Studio для задач и параллельных стеков, а также для Визуализатора параллелизма. |
Пользовательские разделители для PLINQ и TPL | Описывает работу модулей разделения, порядок настройки модулей разделения по умолчанию, порядок создания нового модуля разделения. |
Планировщики задач | Описывает порядок работы модуля планирования и порядок их настройки. |
Лямбда-выражения в PLINQ и TPL | Предоставляет краткие общие сведения по лямбда выражениям в C# и Visual Basic, показывает, как они используются в PLINQ и в библиотеке параллельных задач. |
Дополнительные сведения | Предоставляет ссылки на дополнительные сведения и примеры ресурсов для параллельного программирования с помощью .NET. |