@akass
Developer

Покажите как использовать TPL?

Осваиваю TPL и уже запутался, подскажите что лучше использовать, если у меня коллекция массивов и мне надо их все обработать (только чтение, не изменяю) с возможностью выводить прогресс в ProgressBar и с возможностью Остановить/Приостановить/Продолжить ? Пробовал в Task добавлять Parallel.Foreach но не пошло.

Примерно представляю себе это как Task , в котором параллельно обрабатываются массивы в Parallel.Foreach периодически обновляя ProgressBar через Iprogress. Так в принципе работает, но как это все правильно Остановить/Приостановить/Продолжить?
Пробовал использовать ParallelLoopState и CancelationToken, для остановки, но как-то кривовато.
  • Вопрос задан
  • 304 просмотра
Решения вопроса 1
dmitry_pavlov
@dmitry_pavlov
World-class .NET freelance contractor (remotely)
Думается Parallel.Foreach тут не к месту - см. Pause и Resume в Parallel.Foreach

Через Task-и и PauseToken попобуйте - см. Cooperatively pausing async methods
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы