55.3 다중 스레드를 사용한 메서드 함께 호출하기

    메서드 3개를 서로 다른 스레드 3개에 할당하여 실행하는 프로그램을 만들어 보겠습니다. 다음 내용을 입력한 후 실행해 보세요.

    메서드 3개를 서로 다른 스레드 3개에 할당: ThreadPractice.cs

    using System;
    using System.Diagnostics;
    using System.Threading;
    
    class ThreadPractice
    {
        private static void Ide()
        {
            Thread.Sleep(3000); //3초 딜레이
            Console.WriteLine("[3] IDE : Visual Studio");
        }
    
        private static void Sql()
        {
            Thread.Sleep(3000); //3초 딜레이
            Console.WriteLine("[2] DBMS : SQL Server");
        }
    
        private static void Win()
        {
            Thread.Sleep(3000); //3초 딜레이
            Console.WriteLine("[1] OS : Windows Server");
        }
    
        static void Main()
        {
            //① 스레드
            ThreadStart ts1 = new ThreadStart(Win);
            ThreadStart ts2 = new ThreadStart(Sql);
    
            Thread t1 = new Thread(ts1);
            var t2 = new Thread(ts2);
            var t3 = new Thread(new ThreadStart(Ide))
            {
                Priority = ThreadPriority.Highest //우선순위 높게
            };
    
            t1.Start();
            t2.Start();
            t3.Start();
    
            //② 프로세스
            Process.Start("IExplore.exe");    //익스플로러 실행
            Process.Start("Notepad.exe");    //메모장 실행
        }
    }

    실행 결과

    [2] DBMS : SQL Server
    [3] IDE : Visual Studio
    [1] OS : Windows Server

    에서 스레드를 3개 생성하여 실행하면 결과는 매번 다르게 표현될 수 있습니다. 에서 Process 클래스의 Start() 메서드를 사용하면 윈도 운영 체제에서 인터넷 익스플로러 및 메모장을 실행할 수 있습니다.

    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.