본문 바로가기
프로그램/C# 1000제

C# 예제8] C# 프로그래밍 입문 CHAPTER 1. p33 스레드

by 건티 2021. 7. 19.
728x90

스레드(thread)란 순차 프로그램과 유사하게 시작, 실행 그리고 종료의 순서를 가진 제어의 흐름(flow of execution)이다. 또한 멀티스레드(multithread) 시스템이란 이와 같은 스레드가 하나의 프로그램 내에 여러 개 존재할 수 있는 시스템이다. C#은 응용 프로그램의 병행 처리를 위해 스레드 개념을 지원하고 있으며 스레드를 생성하고 실행시키고 제어하는 방법을 제공해 주고 있다.

C#에서 스레드도 델리게이트를 이용하여 처리한다. 먼저 ThreadStart 델리게이트를 통하여 스레드 몸체에 해당하는 메소드를 연결한 후 생섣왼 델리게이트 객체를 매개변수로 스레드 객체를 생성한다. 이때 C#에서 멀티스레드를 지원하기 위해 제공된 System.Threading 네임스페이스르 포함해야 한다. 스레드 객체를 생성한 후 실제로 Start() 메소드를 호출하여 스레드의 실행을 시작한다. 그러면 독립된 스레드가 작동되어 연결된 메소드를 실행하게 된다.

 

참고예제]

using System;
using System.Collections.Generic;
using System.Text;
using System.Threading;

namespace Chapter1
{
    class ThreadApp
    {
        static void ThreadBody()
        {
            Console.WriteLine("In the thread body ...");
        }

        public static void Main()
        {
            ThreadStart ts = new ThreadStart(ThreadBody);
            Thread t = new Thread(ts);

            Console.WriteLine("*** Start of Main");
            t.Start();
            Console.WriteLine("*** End of Main");
        }
    }
}

 

참고예제 결과]

 

 

 

 

대한민국의 아름다운 영토, 독도의 가을

 

반응형

댓글