c#中我们一般使用forforeach执行循环,但有时候循环的数组数据量比较大或for和foreach性能达到瓶颈时,就需要彼此独立的并行循环方法来提升循环速度以及程序性能,Parallel.For和Parallel.ForEach应运而生,但是Parallel.For和Parallel.ForEach循环的顺序是无序的。本文介绍C#中任务并行循环方法Parellel.For和Parallel.ForEach的用法,文中通过包含示例代码,对学习或者工作非常有帮助。

Parallel.For

private static void Main(string[] args)
 {
     List<string> list = new List<string>() { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10" };
     Parallel.For(0, list.Count, i =>
     {
         Console.WriteLine($"这是第{i}个元素", list[i]);
     }
     );
     Console.ReadKey();
 }

parallel for执行结果##

Parallel.ForEach

public class Program
    {
        private static void Main(string[] args)
        {
            int index = 0;
            List<string> list = new List<string>() { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10" };
            Parallel.ForEach(list, item =>
            {
                index++;
                Console.WriteLine($"这是第{index}个元素", item);
            }
            );
            Console.ReadLine();
        }
    }

parallel foreach执行结果

最后修改:2022 年 09 月 30 日
如果觉得我的文章对你有用,请随意赞赏