在C#中,ParameterizedThreadStart委托用于創建可以接受一個對象參數的線程方法。下面是使用ParameterizedThreadStart委托的基本示例:
using System;
using System.Threading;
class Program
{
static void Main(string[] args)
{
Thread thread = new Thread(new ParameterizedThreadStart(WorkerMethod));
thread.Start("Hello from worker thread!");
// 等待工作線程執行完畢
thread.Join();
Console.WriteLine("Main thread exiting.");
Console.ReadLine();
}
static void WorkerMethod(object message)
{
string msg = (string)message;
Console.WriteLine("Worker thread received message: " + msg);
}
}
在上面的示例中,我們創建了一個新的線程,并將WorkerMethod方法作為線程的入口點。由于WorkerMethod方法接受一個對象參數,我們使用ParameterizedThreadStart委托來創建線程。
在Main方法中,我們創建了一個新的線程并啟動它。我們通過調用thread.Start(“Hello from worker thread!”)來傳遞一個字符串參數給WorkerMethod方法。
WorkerMethod方法在工作線程中執行,并接收傳遞的參數。在這個例子中,我們將傳遞的參數強制轉換為字符串,并在控制臺上打印出來。
最后,我們使用thread.Join()方法等待工作線程執行完畢,并在主線程中打印一條消息。
希望這個示例能幫助你了解如何使用ParameterizedThreadStart委托在C#中創建帶參數的線程方法。