Computer >> 컴퓨터 >  >> 프로그램 작성 >> C#

C#의 멀티스레딩

<시간/>

스레드는 프로그램의 실행 경로로 정의됩니다. 각 스레드는 고유한 제어 흐름을 정의합니다.

C#에서 System.Threading.Thread 클래스는 스레드 작업에 사용됩니다. 다중 스레드 응용 프로그램에서 개별 스레드를 만들고 액세스할 수 있습니다. 프로세스에서 가장 먼저 실행되는 스레드를 메인 스레드라고 합니다.

스레드의 수명 주기는 System.Threading.Thread 클래스의 개체가 생성될 때 시작되어 스레드가 종료되거나 실행이 완료될 때 종료됩니다.

다음은 스레드 수명 주기의 다양한 상태입니다 -

  • 시작되지 않은 상태 − 스레드의 인스턴스가 생성되었지만 Start 메소드가 호출되지 않은 상황입니다.

  • 준비 상태 − 스레드가 실행될 준비가 되어 CPU 주기를 기다리는 상황입니다.

  • 실행할 수 없는 상태 − 다음과 같은 경우 스레드를 실행할 수 없습니다.

    • 수면 방법이 호출되었습니다.
    • 대기 메서드가 호출되었습니다.
    • I/O 작업에 의해 차단됨
  • 죽은 상태 − 스레드가 실행을 완료하거나 중단된 상황입니다.

다음은 C#에서 스레드를 생성하는 방법을 보여주는 예입니다 -

예시

using System;
using System.Threading;

namespace Demo {
   class Program {
      static void Main(string[] args) {
         Thread th = Thread.CurrentThread;
         th.Name = "MainThread";

         Console.WriteLine("This is {0}", th.Name);
         Console.ReadKey();
      }
   }
}

출력

This is MainThread