创业家 发表于 2023-12-5 13:19:07

C#中的并行处理、并行查询的方法你用对了吗?

Parallel.ForEach

Parallel.ForEach 是一个用于在集合上并行执行迭代操作的强大工具。它通过有效地利用多核处理器的能力来提高性能。Parallel.ForEach 不仅能够简化并行编程,而且它在执行简单循环时可以提供比传统迭代更好的性能。
下面是一个简单的示例,演示了如何使用 Parallel.ForEach 并行处理一个整数列表:
using System;using System.Collections.Generic;using System.Threading.Tasks;class Program{    static void Main()    {      List numbers = GetNumbers();      // 使用 Parallel.ForEach 并行处理整数列表      Parallel.ForEach(numbers, num =>      {            int result = ProcessNumber(num);            Console.WriteLine($"Processed {num} - Result: {result}");      });      Console.ReadLine();    }    static List GetNumbers()    {      // 获取一个包含大量整数的列表      List numbers = new List();      for (int i = 1; inum % 2 == 0)// 过滤偶数            .Select(num => num * num)   // 对偶数取平方            .ToList();      // 输出结果      Console.WriteLine("Parallel LINQ Result:");      foreach (var num in result)      {            Console.WriteLine(num);      }      Console.ReadLine();    }    static List GetNumbers()    {      // 获取一个包含大量整数的列表      List numbers = new List();      for (int i = 1; i
页: [1]
查看完整版本: C#中的并行处理、并行查询的方法你用对了吗?