作者million31406 (我想当乡民)
看板C_Sharp
标题[问题]平行处理
时间Wed Jul 11 00:40:32 2012
小弟目前撰写一个即时影像视窗程式
原本的架构如下
class Myclass{
A(); // 影像二值化
B(); // DoSomething
}
A和B function是连续性的,也就是A做完之後才会去执行B
然而A function理面有许多的回圈
我试着将A_method内的回圈改成Parallel.ForEach的形式
但执行结果却产生错误
我是参照这篇文章去做修改
http://www.dotblogs.com.tw/boodoo1121/archive/2010/01/24/13259.aspx
我加了lock也是一样的结果
想请问板上各位大大 使用Parallel.ForEach资料平行处里出错的原因
会是因为里头有if的关系吗?
第二个问题是Parallel.Invoke 和 System.Threading.Tasks提供的Task类别
其相同性是可以并行处理资料,但是其相异性呢?
第三个问题是想请问多执行绪程式,假如我想等这些多执行绪执行完
才接着执行下一个程式(不论是循序或是平行)
有什麽是我可以拿来管理我的程式呢?
我的观念是 (有错请务必指证)
Parallel.Invoke会自动处里而不需要开发者烦心
Task有提供wait()可达成
那是否还有其它可以完成呢?
谢谢各位大大
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.118.17.116