2014년 11월 6일 목요일

Parallel을 통한 병렬 처리에 대한 데모 코드입니다.

Parallel을 통한 병렬 처리에 대한 데모 코드입니다.
 조회 : 47
나의 폴더 > C# | 2013-02-05 (Tue) 19:31http://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);
                });
        }


댓글 없음:

댓글 쓰기

참고: 블로그의 회원만 댓글을 작성할 수 있습니다.

요즘 새로운 과정을 기획하면서 react.js + next.js를 OpenAI API와 같이 사용하는 과정을 만들고 있습니다. ㅎㅎ

 오랜만에 웹 기술들을 공부하니 재미있네요. ㅎㅎ  쭉 파이썬 과정들을 운영하고 있었는데 좀 더 범위를 넓혀서 아이폰 앱 개발과정 with ChatGPT,  웹 프로그래밍 with ChatGPT, AI시대의 AI어시스턴트 활용하기와 같은 글을 쓰고, ...