我对Parallel.ForEach做错了什么

时间:2018-07-17 21:48:18

标签: c# .net parallel.foreach

我在C#中使用Parallel.ForEach使用以下代码

<action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" redirectType="Permanent" appendQueryString="false" />

运行程序时,我希望控制台能打印出 “ 1已处理”,“两个已处理”,“三个已处理”,“四个已处理”,“五个已处理”,“六个已处理”。但是,相反,仅某些项目已被处理!!!

enter image description here

您知道代码出了什么问题吗?

1 个答案:

答案 0 :(得分:3)

最终不会对集合中的每个项目运行该操作 。如果要对集合中的每个项目执行操作,这就是主体的作用。 init最终用于初始化和删除每个工作线程的 。因此,您的打印输出告诉您在处理项目时使用了三个线程。