在C#中,可以使用ParameterizedThreadStart委托來傳遞參數給線程。以下是一個示例:
using System;
using System.Threading;
class Program
{
static void Main()
{
// 創建一個新的線程,并傳遞參數
Thread thread = new Thread(new ParameterizedThreadStart(WorkerThread));
thread.Start("Hello, World!");
Console.WriteLine("主線程結束。");
}
static void WorkerThread(object data)
{
// 從參數中獲取數據
string message = (string)data;
// 執行線程的工作
Console.WriteLine("子線程開始執行,傳遞的參數為:" + message);
// 模擬一些工作
Thread.Sleep(2000);
Console.WriteLine("子線程結束。");
}
}
在上面的示例中,我們創建了一個新的線程,并使用ParameterizedThreadStart委托將WorkerThread方法與線程關聯起來。WorkerThread方法在執行時接收一個object類型的參數,然后我們通過將參數轉換為適當的類型來使用該數據。
注意:使用ParameterizedThreadStart委托傳遞的參數類型必須是object類型,因此在使用它們之前,可能需要進行適當的類型轉換。