c# 指定线程数多线程
时间: 2023-07-26 19:26:32 浏览: 102
在 C# 中,可以使用 Thread 类来实现多线程编程。要指定线程数,可以使用 ThreadPool 类。下面是一个简单的示例,展示如何使用 ThreadPool 来创建多个线程:
```csharp
using System;
using System.Threading;
class Program
{
static void Main(string[] args)
{
// 设置最大工作线程数
ThreadPool.SetMaxThreads(4, 4);
// 创建任务
for (int i = 0; i < 10; i++)
{
ThreadPool.QueueUserWorkItem(new WaitCallback(DoWork), i);
}
Console.ReadKey();
}
static void DoWork(object state)
{
Console.WriteLine($"Thread {Thread.CurrentThread.ManagedThreadId} is processing task {state}");
Thread.Sleep(1000);
}
}
```
在这个示例中,我们使用 ThreadPool 的 SetMaxThreads 方法来设置最大工作线程数为 4。然后,我们使用 QueueUserWorkItem 方法将任务添加到线程池中。在每个任务中,我们打印出当前线程的 ID,并使用 Thread.Sleep 方法模拟一些工作。运行这个程序,你将看到最多同时有 4 个线程在工作,因为我们设置了最大工作线程数为 4。