使用Parallel.ForEach时出错

use*_*319 0 c# linq parallel.foreach

最初,我正在使用foreach来完成我的任务.但是,我想提高任务的效率.所以,我想使用Parallel.ForEach来完成我的任务.

但是,错误"未将对象引用设置为实例".发生了.

这是我的代码:

System.Threading.Tasks.Parallel.ForEach(items, item =>
        {
             System.Threading.Tasks.Parallel.ForEach(item.a, amount =>
                    {
                         WriteToCsv(file, amount.columna, count);
                          count++;
                     });

         });
Run Code Online (Sandbox Code Playgroud)

如果我使用foreach(项目中的var项目)和foreach(项目中的数量),代码工作正常.

我错过了Parallel.ForEach方法吗?

Roy*_*tus 8

你为什么要同时这样做?您正在将值附加到文件,这是一个串行(即非并行)进程.

如果你只是使用常规foreach,你会没事的.