C#
C#: 일반 Thread와 parameter가 있는 Thread의 사용법
개태형님
2016. 10. 6. 09:45
C# 에서 Thread는 크게 2가지로 나뉜다.
1. 매개인자가 없는 일반적인 쓰레드
2. 매개인자가 있는 쓰레드
약간의 차이가 있으나 두가지 방법 모두 어렵지 않다.
1. 매개인자가 없는 일반적인 쓰레드
private void ThreadStart()
{
System.Threading.Thread th = new Thread(new ThreadStart(Test));
th.Start();
}
private void Test()
{
Console.WriteLine("Good");
}
2. 매개인자가 있는 쓰레드
private void ThreadStart()
{
string[] param = { "Param", "Good" };
System.Threading.Thread th = new Thread(new ParameterizedThreadStart(Test));
th.Start(param);
}
private void Test(object param)
{
string[] data = param as string[];
Console.WriteLine(data[0] + " is " + data[1]); // Param is Good
}
매개인자가 있는 Thread 객체를 생성할 경우, Thread 생성자의 매개인자가 되는 메서드의 매개인자는 반드시 object형 이어야만 한다.
매개인자의 전달 방식은 Thread 객체 선언시가 아닌 Start 함수 실행시 한다.