"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 종료~");
}
}
}
댓글 없음:
댓글 쓰기