Подтвердить что ты не робот

С# 5.0 async/await и Rx - Reactive Extensions

Мне интересно, что означают новые асинхронные функции С# 5.0 для Rx - Reactive Extensions? Кажется, что это не замена, но они, похоже, перекрываются - Task и IObservable.

EDIT: Задача против IObservable: когда использовать что?

4b9b3361

Ответ 1

Проверьте также: Обзор потока данных TPL о TDF и Rx:

Астуальные читатели могут заметить некоторые сходства между потоком данных TPL и реактивными расширениями (Rx), которые в настоящее время доступны для загрузки с сайта прототипов DevLabs. Rx преимущественно ориентирован на координацию и составление потоков событий с помощью API на основе LINQ, предоставляя богатый набор комбинаторов для управления IObservables данных. Напротив, поток данных TPL ориентирован на предоставление строительных блоков для передачи сообщений и параллелизации приложений с интенсивным использованием процессора и ввода/вывода с высокой пропускной способностью и низкой задержкой, а также предоставляет разработчикам явный контроль над тем, как данные буферизуются и перемещаются по системе, Таким образом, поток данных Rx и TPL, хотя потенциально рассматривается как похожий на уровне 30 000 футов, адресует различные потребности. Тем не менее, TPL Dataflow и Rx обеспечивают лучшую историю.

Ответ 2

Джефф пишет на форуме Rx, что Rx все равно будет использоваться для организации нескольких задач, управляемых событиями, Rx выпустит новую версию, которая включает IAsyncEnumerable, чтобы использовать новые функции async в Rx.