Перейти к содержимому

Метка: NET

Реактивное программирование на C# с помощью Rx на примере СЭД

Введение

Как написано в статье про реактивные расширения [1], «если есть некий процесс, который может выполняться долго и возвращать несколько промежуточных результатов с течением времени», то реактивные расширения это именно то, что вам нужно.  Поэтому давайте попробуем разобраться в этом вопросе и понять для чего это нужно.

Вспомним как работает клиент-серверная архитектура. Клиент отправляет запрос серверу и получает ответ, так в чём же проблема? Чтобы понять в чём проблема нужно вспомнить как работают приложения, не важно это приложение под desktop или web. Когда приложение запускается, то запускается процесс от рисовки окон или форм данного приложения, этот процесс выполняется всегда пока приложение не будет завершено.

При отображении элементов форм выполняются действия, которые отслеживают реакцию пользователя. Но что произойдёт если пользователь запустит действие, которое требует длительное время? В этом случае приложение останавливает свою работу.

Подумаем какие есть пути решения этой проблемы.

Оставить комментарий