TPL - это библиотека для параллельных вычислений..NET 4.5 async - это языковая функция, основанная на TPL, которая упрощает процесс.Это особенно верно, когда у вас есть рабочие процессы с несколькими шагами.
В двух словах, async
позволяет вам писать свой код, как если бы он был синхронным, поэтому логический поток остается неизменным.Процесс ожидания завершения задачи, запуска определенного кода, когда это происходит, может быть выполнен очень естественным образом с помощью async
.Компиляторы C # 5.0 и VB 11.0 преобразуют ваш код в эквивалентный код C # 4.0 и VB 10.0 с использованием TPL и некоторых новых async
связанных типов.
Для превосходного внутреннего объяснения async
,см. серию блогов Eduasync Джона Скита.
Итак, как вы решаете, какой использовать?Ну, async
в основном абстрагирует от всех сложностей создания последовательности фрагментов кода, которые связаны между собой асинхронными вызовами.Предположительно, когда вы вызываете веб-сервис или обращаетесь к базе данных, вы хотите что-то делать с тем, что возвращается.async
позволяет объединить код вызова и обработки, что должно облегчить написание вашего кода, а также облегчить его чтение в дальнейшем.