在C#中,可以使用.NET的System.Threading命名空間中的類來創(chuàng)建和管理線程
using System;
using System.Threading;
class Program
{
static void Main()
{
// 創(chuàng)建一個新線程
Thread newThread = new Thread(new ThreadStart(MyMethod));
// 啟動線程
newThread.Start();
// 等待線程完成
newThread.Join();
Console.WriteLine("線程已完成");
}
static void MyMethod()
{
Console.WriteLine("這是新線程");
}
}
using System;
using System.Threading;
class Program
{
static void Main()
{
// 將工作項添加到線程池隊列
ThreadPool.QueueUserWorkItem(new WaitCallback(MyMethod));
// 等待所有線程完成(僅適用于此示例,實(shí)際應(yīng)用中不建議使用)
Thread.Sleep(1000);
Console.WriteLine("所有線程已完成");
}
static void MyMethod(object state)
{
Console.WriteLine("這是線程池中的線程");
}
}
using System;
using System.Threading.Tasks;
class Program
{
static async Task Main()
{
// 創(chuàng)建一個新任務(wù)
Task task = Task.Run(() => MyMethod());
// 等待任務(wù)完成
await task;
Console.WriteLine("任務(wù)已完成");
}
static void MyMethod()
{
Console.WriteLine("這是任務(wù)中的線程");
}
}
使用Task類是最推薦的方法,因?yàn)樗峁┝烁呒壍墓δ埽绠惒骄幊?、任?wù)組合和取消支持。同時,Task類也會自動利用線程池,從而提高性能。