@akass
Developer

Как правильно распараллелить?

Есть произвольное количество блоков одного размера, необходимо посчитать хэш каждого.
Как это правильно распараллелить с учетом работы в многопроцессорной среде? Да и вообще как правильно?
Есть ли способ найти оптимальное количество потоков чтобы нагрузить самое слабое звено?(диск\компьютер)
С использованием только .NET 3.5 и без классов ThreadPool и BackgroundWorker.
  • Вопрос задан
  • 378 просмотров
Пригласить эксперта
Ответы на вопрос 1
Neuroware
@Neuroware
Программист в свободное от работы время
в своей программе в аналогичном коде (считывание с диска, подсчет кэшей блоков считанного) пользовался обычным parallel foreach, под капотом там если мне не изменяет как раз threadpool, ибо это эффективней чем постоянно создавать потоки вручную. В таком раскладе как у меня тормозит именно диск, скорость работы кода ограничивается скоростью работы диска, в моем случае под 100мб в сек. шло легко.
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы