Parallel.ForEach未执行该方法
本文关键字:方法 执行 ForEach Parallel | 更新日期: 2023-09-27 18:21:09
我正在尝试并行化下面的For Each循环,它按预期工作。我从这个开始:
foreach (DataRow drGroup in dsGroups.Tables["Table"].Rows)
ProduceInvoices(drGroup);
并将其更改为:
Parallel.ForEach<DataRow>((IEnumerable<DataRow>)dsGroups.Tables["Table"].Rows, ProduceInvoices)
然而,尽管dsGroup包含行,ProduceInvoices
似乎不再被执行。
你能给我提供一些建议和/或在哪里找吗?
尝试使用AsEnumerable
方法:
Parallel.ForEach<DataRow>(dsGroups.Tables["Table"].AsEnumerable(), ProduceInvoices);
Rows
属性返回一个不实现IEnumerable<T>
的DataRowCollection
。