在C#中,可以使用多種方法來實現多線程。這里將介紹兩種常見的方法:使用Thread
類和使用Task
類。
Thread
類:首先,需要引入System.Threading
命名空間。然后,創建一個新的Thread
對象并傳遞一個表示要執行的方法的ThreadStart
委托。最后,調用Thread
對象的Start
方法來啟動新線程。
示例代碼:
using System;
using System.Threading;
class Program
{
static void Main(string[] args)
{
Thread thread = new Thread(new ThreadStart(MyMethod));
thread.Start();
// 主線程繼續執行其他任務
Console.WriteLine("Main thread is running...");
thread.Join(); // 等待子線程完成
}
static void MyMethod()
{
Console.WriteLine("Child thread is running...");
}
}
Task
類(推薦):首先,需要引入System.Threading.Tasks
命名空間。然后,創建一個新的Task
對象并傳遞一個表示要執行的方法的Action
委托。最后,調用Task
對象的Start
方法來啟動新線程。
示例代碼:
using System;
using System.Threading.Tasks;
class Program
{
static void Main(string[] args)
{
Task task = new Task(MyMethod);
task.Start();
// 主線程繼續執行其他任務
Console.WriteLine("Main thread is running...");
task.Wait(); // 等待子線程完成
}
static void MyMethod()
{
Console.WriteLine("Child thread is running...");
}
}
注意:在實際應用中,推薦使用Task
類來實現多線程,因為它提供了更高級的功能,如任務并行、任務連續和任務取消等。此外,Task
類還可以與async/await
關鍵字結合使用,從而簡化異步編程。