티스토리 뷰

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 함수 실행시 한다.

댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday