C#多线程的无参数使用
private void button1_Click(object sender, EventArgs e)
{
Thread thread = new Thread(new ThreadStart(DoWork));
thread.Start();
}
//线程无参数
/// <summary>
/// 无参数线程执行方法
/// </summary>
public static void DoWork()
{
//线程需要执行代码
try
{
for (int i = 0; i < 10; i++)
Console.WriteLine("Work thread:" + i.ToString());
}
catch (Exception e)
{
Console.WriteLine(e.Message);
Thread.ResetAbort();
}
Console.WriteLine("Work thread: still alive and working.");
Thread.Sleep(1000);
Console.WriteLine("Work thread: finished working.");
}
1.2,需要参数的线程,如下代码所示
private void button1_Click(object sender, EventArgs e)
{
Thread parameterizedThread = new Thread(new ParameterizedThreadStart(DoWorkWithParam));
parameterizedThread.Start("test");
}
//线程有参数
/// <summary>
/// 有参数线程
/// </summary>
/// <param name="obj"></param>
public static void DoWorkWithParam(object obj)
{
//线程需要执行代码调用参数
string msg = (string)obj;
// textBox1.AppendText("线程执行"+ msg);
//textBox1.AppendText("\r\n");
// Console.WriteLine("Parameterized Work thread:" + msg);
}