c# 循环创建线程执行任务,可以做到统一管理
时间: 2024-09-25 14:15:18 浏览: 54
C#如何对多线程、多任务管理(demo)
在 C# 中,循环创建线程并执行任务通常通过 `Task` 和 `Parallel` 类组合来完成,这使得任务管理和并发控制变得简单。以下是一个基本的例子:
```csharp
using System;
using System.Threading.Tasks;
public class MainClass {
public static void Main(string[] args) {
// 创建一个范围,例如处理10个任务
int taskCount = 10;
// 使用 Task.Run 来异步地在一个新线程上执行任务
Action<int> worker = (index) => {
Console.WriteLine($"Task {index} is running on thread ID: {Thread.CurrentThread.ManagedThreadId}");
// 这里放置你要执行的具体任务代码
};
// 使用 Parallel.ForEach 或 ForEachAsync 创建并启动线程池中的任务
Parallel.For(0, taskCount, i =>
{
Task.Run(() => worker(i));
});
// 等待所有任务完成,如果需要的话
Console.WriteLine("Waiting for all tasks to finish...");
Task.WaitAll(Enumerable.Range(0, taskCount).Select(_ => Task.Run(worker)));
Console.WriteLine("All tasks have completed.");
}
}
阅读全文