1 帶參數的委托方法來傳遞參數
static void Main(string[] args)
{
var d = new Data { Message = "中國" };
//通過帶參數的委托方法來傳遞參數 ParameterizedThreadStart
var t2 = new Thread(ThreadMainWithParameters);
t2.Start(d);
System.Console.ReadLine();
}
static void ThreadMainWithParameters(object o)
{
Data d = (Data)o;
Console.WriteLine("Running in a thread, received {0}", d.Message);
}
2 通過成員方法和帶參數的構造函數傳參數
class Program
{
static void Main(string[] args)
{
var obj = new MyThread("廣東");
var t3 = new Thread(obj.ThreadMain);
t3.Start();
System.Console.ReadLine();
}
}
public class MyThread
{
private string data;
public MyThread(string data)
{
this.data = data;
}
/// <summary>
/// 線程方法
/// </summary>
public void ThreadMain()
{
Console.WriteLine("Running in a thread, data: {0}", data);
}
}
public struct Data
{
public string Message;
}
