Parallel을 통한 병렬 처리에 대한 데모 코드입니다. | |
나의 폴더 > C# | 2013-02-05 (Tue) 19:31 | http://blog.dreamwiz.com/papasmf1/13929007 |
private static void LongRunningMethodA()
{ Thread.Sleep(3000); Debug.WriteLine("A 현재 시간은 {0}", DateTime.Now); } private static void LongRunningMethodB() { Thread.Sleep(2000); Debug.WriteLine("B 현재 시간은 {0}", DateTime.Now); } private static void LongRunningMethodC() { Thread.Sleep(5000); Debug.WriteLine("C 현재 시간은 {0}", DateTime.Now); } private void button4_Click(object sender, EventArgs e) { //동시에 태스크들을 실행할 경우 패러럴을 사용한다. Parallel.Invoke(() => LongRunningMethodA(), () => LongRunningMethodB(), () => LongRunningMethodC()); //Parallel.For를 통한 반복 int from = 0; int to = 10000; double[] array = new double[to]; //아래의 코드는 순차적인 처리 코드 for (int index = 0; index < 10000; index++) { array[index] = Math.Sqrt(index); } //아래의 코드는 동등한 병렬 처리 코드 Parallel.For(from, to, index => { array[index] = Math.Sqrt(index); }); } |
댓글 없음:
댓글 쓰기
참고: 블로그의 회원만 댓글을 작성할 수 있습니다.