溫馨提示×

C#中thread怎么傳遞參數

c#
小億
404
2024-01-12 01:54:08
欄目: 編程語言

在C#中,可以使用Thread類的ParameterizedThreadStart委托來傳遞參數給線程。以下是示例代碼:

using System;
using System.Threading;

class Program
{
    static void Main()
    {
        // 創建一個線程,并傳遞參數給線程
        Thread thread = new Thread(new ParameterizedThreadStart(WorkThread));
        thread.Start("Hello, World!");

        Console.WriteLine("主線程");

        Console.ReadLine();
    }

    static void WorkThread(object data)
    {
        string message = (string)data;
        Console.WriteLine("工作線程收到參數:{0}", message);
    }
}

在上述代碼中,我們創建了一個新的線程,并通過ParameterizedThreadStart委托將參數傳遞給線程。在工作線程中,我們將接收到的參數轉換為所需的類型,并進行相應的操作。

請注意,在C# 4.0以后,還可以使用Lambda表達式來傳遞參數給線程,例如:

Thread thread = new Thread(() =>
{
    string message = "Hello, World!";
    Console.WriteLine("工作線程收到參數:{0}", message);
});
thread.Start();

使用Lambda表達式可以更簡潔地傳遞參數給線程。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女