Результаты, возвращаемые асинхронным методом

C#

В предыдущей части мы познакомились в общих чертах с тем, что из себя представляют асинхронные методы в C# и как они работают. Сегодня более подробно рассмотрим какие результаты возвращает асинхронный метод и как с этими результатами мы можем работать.

Читать далее

Асинхронное программирование в C#

Асинхронное программирование позволяет избежать появления узких мест в приложении и увеличить общую скорость реагирования на действия пользователя. Суть асинхронного программирования заключается в том, что отдельные операции в вашем коде выносятся в специальные асинхронные методы и выполняются отдельно таким образом, чтобы ресурсы вашего приложения использовались максимально эффективно.

Читать далее

Библиотека TPL C#. Параллельное программирование

Основная цель Task Parallel Library (TPL, библиотека параллельных задач) — повышение производительности разработчиков при добавлении многопоточности в приложения C#. Начиная с .NET Framework 4 наиболее предпочтительным вариантом использования многопоточности в приложении является использование именно библиотек TPL, но, при этом, такие классы как Thread, который мы рассматривали в предыдущей части, также могут использоваться и все также находят широкое применение на сегодняшний день.

Читать далее

Параллельное программирование в C#: создание и выполнение задач (Task)

В наше время — время многоядерных процессоров, параллельное программирование становится все более  и  более востребованной задачей при разработке программного обеспечения. В .NET Framework 4 была добавлена удобная библиотека для параллельного программирования — Task Parallel library (библиотека параллельных задач) или, сокращенно, TPL.  Так, если ранее нам приходилось тратить достаточно много времени на разработку потоков (Thread), выполнение взаимоблокировок и прочих задач, обеспечивающих эффективное и безопасное параллельное выполнение нескольких задач, то с TPL мы получили удобный и эффективный инструмент для параллельного программирования в C#, позволяющий разрабатывать программное обеспечение, максимально использующее все  возможности современных компьютеров.

Читать далее