C#中线程创建
Thread类的构造函数有2中:
1、不带参数(ThreadStart 委托)
private static void ThreadMethod()
{
Console.WriteLine("This is other thread main method.");
}
Thread thread = new Thread(ThreadMethod);
thread.Start();
2、带参数
private static void ThreadWithParameters(Data data)
{
Console.WriteLine("Running in a thread, received {0}", data.Message);
}
public struct Data
{
public string Message;
}
var data = new Data { Message = "Hello world" };
Thread t2 = new Thread(MainThreadWithParameters);
t2.Start(data);
通过类传递参数:
public class MyThread
{
private string message;
public MyThread(string data)
{
message = data;
}
public void ThreadMethod()
{
Console.WriteLine("Running in a thread" + message);
}
}
MyThread myTh = new MyThread("Hello World");
Thread thread2 = new Thread(myTh.ThreadMethod);
thread2.Start();