"Start Thread" 버튼 클릭시 0.5초 간격으로 1부터 순차적으로 숫자를 출력하고 

"Stop Thread" 버튼 클릭시 쓰레드를 종료하는 초 간단 C#용 Thread 예제 코드이다.

화면 구성은 다음과 같다.


using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading;

using System.Threading.Tasks;

using System.Windows.Forms;


namespace ExSerialRead

{

    public partial class Form1 : Form

    {

        private int cnt = 0;

        private Thread rTh;


        public Form1()

        {

            InitializeComponent();

        }


        private void btnStartThread_Click(object sender, EventArgs e)

        {

            //Thread 객체 생성. 생성시 이 Thread가 실행할 메소드를 지정해 준다. 

            //여기서는 Count라는 메소드를 rTh라는 쓰레드가 실행하게 될 것이다.

            rTh = new Thread(Count);

            rTh.Start();

        }


        // Thread로 수행할 작업

        private void Count()

        {

            while(true)

            {

                ++cnt;

                Thread.Sleep(500);

                //Console.WriteLine("crr cnt : " + cnt); 

                Console.WriteLine("crr cnt is {0} ", cnt); 


                if (cnt > 200)

                {

                    rTh.Abort(); //쓰레드 강제 종료


                    Console.WriteLine("Thread 종료. cnt : " + cnt);

                    break;

                }

            }

        }


        private void btnStopThread_Click(object sender, EventArgs e)

        {

            rTh.Abort(); //쓰레드 강제 종료

            Console.WriteLine("Thread 종료~");

        }

    }

}




+ Recent posts