在多線程中使用lambda表達(dá)式可以通過幾種方式實(shí)現(xiàn),其中一種常見的方式是使用Task類來創(chuàng)建并啟動(dòng)一個(gè)新的任務(wù),并在任務(wù)的構(gòu)造函數(shù)中使用lambda表達(dá)式來定義要執(zhí)行的代碼塊。以下是一個(gè)簡(jiǎn)單的示例:
using System;
using System.Threading;
using System.Threading.Tasks;
class Program
{
static void Main()
{
// 創(chuàng)建并啟動(dòng)一個(gè)新的任務(wù)
Task task = Task.Run(() =>
{
// 在lambda表達(dá)式中定義要執(zhí)行的代碼塊
for (int i = 0; i < 10; i++)
{
Console.WriteLine($"Task: {i}");
Thread.Sleep(1000);
}
});
// 等待任務(wù)完成
task.Wait();
Console.WriteLine("Main thread finished.");
}
}
在上面的示例中,通過調(diào)用Task.Run()方法創(chuàng)建了一個(gè)新的任務(wù),并在lambda表達(dá)式中定義了任務(wù)要執(zhí)行的代碼塊。這個(gè)任務(wù)會(huì)在后臺(tái)線程中執(zhí)行,在主線程中調(diào)用Wait()方法等待任務(wù)完成后打印出"Main thread finished."。這樣就實(shí)現(xiàn)了在多線程中使用lambda表達(dá)式的功能。