Бакалавр
Дипломные и курсовые на заказ

Роль класса Parallel

РефератПомощь в написанииУзнать стоимостьмоей работы

Ключевым классом в TPL является System.Threading.Tasks.Parallel. Этот класс поддерживает набор методов, которые позволяют осуществлять итерацию по коллекции данных, т. е. по объекту, реализующему интерфейс IEnumerable, в параллельном режиме. В документации .NET Framework 4.5 SDK указано, что упомянутый класс поддерживает два основных статических метода, Parallel. For () и Parallel. ForEach… Читать ещё >

Роль класса Parallel (реферат, курсовая, диплом, контрольная)

Ключевым классом в TPL является System.Threading.Tasks.Parallel. Этот класс поддерживает набор методов, которые позволяют осуществлять итерацию по коллекции данных, т. е. по объекту, реализующему интерфейс IEnumerable, в параллельном режиме. В документации .NET Framework 4.5 SDK указано, что упомянутый класс поддерживает два основных статических метода, Parallel. For () и Parallel. ForEach (), каждый из которых имеет множество перегруженных версий.

Эти методы позволяют создавать тело операторов кода, которое будет выполняться в параллельном режиме. Концептуально эти операторы представляют собой логику того же рода, которая была бы написана в нормальной циклической конструкции (с применением ключевых слов for и foreach языка С#). Преимущество заключается в том, что класс Parallel самостоятельно будет брать потоки из пула потоков (и управлять параллелизмом). Оба метода требуют указания совместимого с IEnumerable или IEnumerable контейнера, хранящего данные, которые нужно обработать в параллельном режиме. Контейнер может быть простым массивом, необобщенной коллекцией (такой как ArrayList), обобщенной коллекцией (наподобие List) или результатом запроса LINQ. Вдобавок с помощью делегатов System. Func и System. Action понадобится задать целевой метод, который будет вызываться для обработки данных. Делегат Func представляет метод, который возвращает значение и принимает различное количество аргументов. Делегат Action очень похож на Func в том, что позволяет задавать метод, принимающий несколько параметров. Однако Action указывает метод, который может возвращать только void. Хотя можно было бы вызывать методы Parallel. For () и Parallel. ForEach () и передавать им строго типизированный объект делегата Func или Action, задача программирования упрощается за счет использования подходящих анонимных методов и лямбда-выражений языка С#.

Показать весь текст
Заполнить форму текущей работой