당신은 스레드의 수를 설정할 수 있습니다 :.NET 4.0 베타 2에서 더 많은 동시 스레드를 생성하도록 PLINQ를 만드는 방법은 무엇입니까? 병렬 확장의 이전 버전에서는
enumerable.AsParallel(numberOfThreads)
을하지만 지금이 오버로드는 더 이상 사용할 수 없습니다. 그것을 지금하는 방법?
당신은 스레드의 수를 설정할 수 있습니다 :.NET 4.0 베타 2에서 더 많은 동시 스레드를 생성하도록 PLINQ를 만드는 방법은 무엇입니까? 병렬 확장의 이전 버전에서는
enumerable.AsParallel(numberOfThreads)
을하지만 지금이 오버로드는 더 이상 사용할 수 없습니다. 그것을 지금하는 방법?
새 버전에서는 확장 메서드 ".WithDegreeOfParallelism (int degreeOfParallelism)"로 지정할 수 있습니다.
IE는 :
enumerable.AsParallel().WithDegreeOfParallelism(numberOfThreads)
변경된 이유는 모르겠지만 질문에 답할 수는 없습니다. 개발자가 스레드 수를 지정하면 병렬 런타임에서 작업을 수행 할 수없는 것처럼 보입니다. 현재 사용 가능한 하드웨어 스레드를 기반으로하는 가장 최적의 방법입니다.
스레드 수를 지정하고 싶지 않습니다. PLINQ의 장점은 스레딩 논리를 파악하지 않고도 병렬로 진행된다는 것입니다.
그와 나는 런타임 손에서 자원을 기반으로 계산 생각합니다. IE 8 코어 박스는 더 많은 스레드와 2 코어 박스를 수행합니다. –
8 코어 대 2 코어는 "사용 가능한 하드웨어 스레드"를 작성할 때 생각하고있었습니다. 이 질문에 대한 유일한 답이되기를 기대하지 않았습니다! – CoderDennis
오늘날의 데스크톱 응용 프로그램에서, 대부분의 시간, 당신은 CPU 바인딩되지 않습니다; 병렬 작업 수를 수동으로 설정할 수 있기 때문에 개발자는 APM의 복잡성을 처리 할 필요없이 합리적으로 우수한 병렬 코드를 작성할 수 있습니다. – Maghis