본문 바로가기
Programming/C#

[C#] 쓰레드 생성 / 실행 / 종료

by 타임박스 2019. 10. 17.
반응형


✔ Thread 시작, 실행, 종료



◈쓰레드 생성

- Thread를 생성하고 돌리기위해서는 먼저 Thread가 작업할 함수를 만들어야합니다.

//Thread가 작업하는 함수
private static void Run()                   
{
  while(true)
  {
  	Console.WriteLine("Do working...");
  }
}

- 함수 생성 후 Thread 클래스 생성.

Thread thread = new Thread(Run);        // Thread 생성

 

◈쓰레드 시작

thread.Start();                         // 생성된 Thread 시작

 

◈쓰레드 종료

- 강제종료

thread.Abort();                         //Thread 강제종료

 

- 작업 수행 후 종료 ( 메인 쓰레드가 생성된 쓰레드 작업이 종료될때까지 기다렸다가 종료됨 )

  thread.Join();                         //Thread 작업수행 후 종료 
  
  // 위에서 만든 쓰레드 작업이 무한루프이기때문에 Join을 했을 경우 종료되지 않음.

 

◈Test Code

using System;
using System.Threading;

namespace TEST
{
    class Programa
    {
        static void Main(string[] args)
        {
            Thread thread = new Thread(Run);        // Thread 생성
            thread.Start();                         // 생성된 Thread 시작

            Console.ReadKey();
            thread.Abort();                         //Thread 강제 종료
        }

        //Thread가 작업하는 함수
        private static void Run()                   
        {
            while(true)
            {
                Console.WriteLine("Do working...");
            }
        }
    }
}

 

반응형

댓글