我的问题是类似Parallel Foreach Race Condition并行的foreach计数
了很多,但它并没有回答非常明确,它在这个意义上,我需要计算该物体在不同的换每个满足一定的条件。如果它确实需要将它添加到列表中。
所以像这样
List<int> MetCriteria = new List<int>();
Parallel.ForEach(dt.AsEnumerable(), (entry,state) => {
if (Convert.ToInt32(entry["Time"]) > 100)//in miliseconds
MetCriteria.add(Convert.ToInt32(entry["EntryID"]);
});
所以,很显然这个名单不包含像线程锁或东西,一个正常的,每个会,因为我需要一些方法来保持MetCriteria
对象同步的所有值,但我不确定如何做到这一点
任何帮助,请
“if”语句是字面意思,你正在尝试做什么?如果是这样,你为什么使用并行处理? – Enigmativity
我必须根据金额做不同的事情,所以如果它超过100,它会符合条件,如果没有,则需要检查其他变量,并将其添加到单独的列表中。那么我必须针对每个条目调用Web服务,根据输入时间可能需要一些时间 – Neil
您是否简单地比较了像Convert.ToInt32(entry [“Time”])> 100'这样的值并添加了项目列表,然后调用Web服务?还是你在'if'里面调用一个web服务? – Enigmativity