Как заставить PLINQ создавать больше параллельных потоков в .NET 4.0 beta 2?

StackOverflow https://stackoverflow.com/questions/1777140

Вопрос

В предыдущих версиях параллельных расширений вы могли установить количество потоков:

enumerable.AsParallel(numberOfThreads)

Но теперь эта перегрузка больше не доступна.Как это сделать сейчас?

Это было полезно?

Решение

В новой версии вы можете указать это с помощью метода расширения ".WithDegreeOfParallelism(int DegreeOfParallelism)".

IE:

enumerable.AsParallel().WithDegreeOfParallelism(numberOfThreads)

Другие советы

Я действительно понятия не имею, почему это изменилось, поэтому я не могу ответить на вопрос, но похоже, что если разработчик укажет количество потоков, то параллельная среда выполнения не сможет выполнить операцию наиболее оптимальным способом на основе доступных в данный момент аппаратных потоков.

Я не хочу указывать количество потоков.Прелесть PLINQ в том, что он просто работает параллельно, без необходимости мне разбираться в какой-либо логике потоков.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top