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

郭卫东  金牌会员 | 2024-2-3 03:14:41 | 来自手机 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 912|帖子 912|积分 2736

Parallel.ForEach

Parallel.ForEach 是一个用于在集合上并行执行迭代操作的强大工具。它通过有效地利用多核处理器的能力来提高性能。Parallel.ForEach 不仅能够简化并行编程,而且它在执行简单循环时可以提供比传统迭代更好的性能。
下面是一个简单的示例,演示了如何使用 Parallel.ForEach 并行处理一个整数列表:
[code]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($"rocessed {num} - Result: {result}");        });        Console.ReadLine();    }    static List GetNumbers()    {        // 获取一个包含大量整数的列表        List numbers = new List();        for (int i = 1; i  num % 2 == 0)  // 过滤偶数            .Select(num => num * num)     // 对偶数取平方            .ToList();        // 输出结果        Console.WriteLine("arallel LINQ Result:");        foreach (var num in result)        {            Console.WriteLine(num);        }        Console.ReadLine();    }    static List GetNumbers()    {        // 获取一个包含大量整数的列表        List numbers = new List();        for (int i = 1; i
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

郭卫东

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表