Page History
...
그낭 묵묵히 독립적으로 자기만의 일을 하는것입니다. 여기서 여러명의 식사가 필요하면 단순하게 병렬처리 스레드 개수를 늘려서 해결합니다.
자신의 목표치가 먼저 달성되면 유휴상태가 되기도 하지만, 남의일을 대신 해줄순 되거나 자신의 스레드 자원을 반납할수는있지만, 진행중인 남의일을 대신하여 전체 시간을 줄일순 없습니다.
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
//병렬처리를 위한 멀티 코어 프로그래밍 예 Thread[] threads = new Thread[NumOfThread]; Process currentProcess = Process.GetCurrentProcess(); foreach (ProcessThread processThread in currentProcess.Threads) { processThread.ProcessorAffinity = currentProcess.ProcessorAffinity; } //물리적단위인 Core(process) 에 Task를 명시적으로 걸고 동시에 시작해버립니다. for (int i = 0; i < NumOfThread; i++) { threads[i].Join(); } } |
...