在C#中,可以使用.NET的System.Threading命名空間中的類來創建和管理線程
using System;
using System.Threading;
class Program
{
static void Main()
{
// 創建一個新線程
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));
// 等待所有線程完成(僅適用于此示例,實際應用中不建議使用)
Thread.Sleep(1000);
Console.WriteLine("所有線程已完成");
}
static void MyMethod(object state)
{
Console.WriteLine("這是線程池中的線程");
}
}
using System;
using System.Threading.Tasks;
class Program
{
static async Task Main()
{
// 創建一個新任務
Task task = Task.Run(() => MyMethod());
// 等待任務完成
await task;
Console.WriteLine("任務已完成");
}
static void MyMethod()
{
Console.WriteLine("這是任務中的線程");
}
}
使用Task類是最推薦的方法,因為它提供了更高級的功能,如異步編程、任務組合和取消支持。同時,Task類也會自動利用線程池,從而提高性能。