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