在C#中,可以使用多種方法來實現多線程。以下是一些常見的方法:
System.Threading.Thread
類創建線程:using System;
using System.Threading;
class Program
{
static void Main()
{
Thread newThread = new Thread(DoWork);
newThread.Start();
}
static void DoWork()
{
Console.WriteLine("新線程正在運行...");
}
}
Task
類(推薦):using System;
using System.Threading.Tasks;
class Program
{
static async Task Main()
{
await Task.Run(() => DoWork());
}
static void DoWork()
{
Console.WriteLine("新線程正在運行...");
}
}
Parallel
類:using System;
using System.Threading.Tasks;
class Program
{
static void Main()
{
Parallel.Invoke(DoWork, DoWork2);
}
static void DoWork()
{
Console.WriteLine("第一個線程正在運行...");
}
static void DoWork2()
{
Console.WriteLine("第二個線程正在運行...");
}
}
ThreadPool
類:using System;
using System.Threading;
class Program
{
static void Main()
{
ThreadPool.QueueUserWorkItem(new WaitCallback(DoWork));
}
static void DoWork(object state)
{
Console.WriteLine("新線程正在運行...");
}
}
這些方法都可以用于在C#中創建和運行多線程。但是,使用Task
類通常是最推薦的方法,因為它提供了更好的性能和更簡單的編程模型。