Я думаю о привлечении Rx на свое рабочее место, но чем больше я узнаю об этом, тем больше я думаю, что это не дает вам преимущества.Где использовать Rx?
У нас есть много серверных приложений, которые принимают входные данные на одном конце и выводят их на другом конце. Что идеально подходит для модели актера и «бесконечной» масштабируемости потоков, до сих пор я использовал ConcurrentQueues для реализации передачи сообщений, и я подумал, что Rx может быть более функциональной альтернативой, которая может сделать параллелизм более неявным, что поможет мне переместить некоторые из решения потоков данных от императивного кода к декларациям наблюдаемых.
Но, прочитав об этом и попробовав, я не вижу большого преимущества перед использованием обычных старых потоков с ConcurrentQueues для передачи сообщений. Какие преимущества дает мне Rx? Всегда говорят, что хотя .NET 4.5 сделал много Rx устаревшим (хотя async и Dataflow), он по-прежнему хорош для обработки потоков событий. Какие случаи представляют потоки событий и как их идентифицировать?
Вы могли бы найти применение Нетфликса ПРМ Cо спаренный глядя на них, похоже, они хорошо работали для них https://blogs.msdn.com/b/interoperability/archive/2013/02/05/netflix-solving-big-problems-with-reactive-extensions-rx.aspx – Wilka
Как правило (очень грубое), если вы имеете дело с одиночными значениями, используйте TPL/Task api; если вы имеете дело с последовательностями «событий» (общие «что-то», а не только события .net), используйте rx. Поток данных, с которым я менее знаком, мне придется подумать об этом. – JerKimball