У меня есть список объектов в моем приложении C# 4.0. Предположим, что этот список содержит 100 объектов студенческого класса. Есть ли способ в Reactive Framework для параллельного выполнения по 10 объектов каждый раз за раз?Возможно ли это с помощью Reactive Framework?
Каждый объект-ученик запускает метод, который занимает некоторое время в течение примерно 10-15 секунд. Итак, первый раз, возьмите первые 10 студенческих объектов из списка и дождитесь, пока все 10 студенческих объектов закончат свою работу, а затем возьмут следующие 10 объектов-учеников и так далее, пока они не завершат полные элементы в списках?
- У меня есть
List<Student>
со 100 счетами. - Сначала возьмите 10 элементов из списков и вызовите метод длинного запуска каждого объекта параллельно.
- Получает каждое возвращаемое значение объектов и обновляет пользовательский интерфейс [часть подписки].
- Следующий раунд начинается только в том случае, если первые 10 раундов завершают и освобождают всю память.
- Повторите тот же процесс для всех элементов в списках.
- Как поймать ошибки в каждом процессе?
- Как освободить ресурсы каждого ресурса объекта и другие ресурсы из памяти?
- Каков наилучший способ сделать все это в Reactive Framework?
Спасибо Арон. Не могли бы вы объяснить код ur? большое спасибо – user2017793
Довольно просто. Окно (10) преобразует произведение в куски 10. Слияние (1) работает на одном потоке. Преобразуйте 10 учеников во внутреннее наблюдение. Сделай, эм ... сделай некоторую работу. ObserveOnDispatcher() вернется к потоку пользовательского интерфейса на следующем бите. Ум ... работайте над UpdatingUI. Наконец, подпишитесь на внутреннее наблюдаемое. Промыть и повторить. – Aron
Еще раз спасибо Арон. Мое сомнение заключалось в том, как выпустить каждые 10 объектных ресурсов учеников. Ваше объяснение было очень полезно и большое спасибо за это. Я беспокоюсь о проблемах с памятью. Помогите мне. – user2017793