我在C#/ VS2010中使用Parallel.ForEach循环来进行处理,我有几个问题.
首先我有一个需要从远程web服务中提取信息,然后将需要建立的飞行图像(GDI)的过程.
我有一个类,它将所有功能封装到一个对象中,使用两个主要方法Load()和CreateImage(),并在此对象中包含所有GDI管理/ WebRequests"blackboxed".
然后我创建一个包含所有需要处理的对象的GenericList,并使用以下代码遍历列表:
try
{
Parallel.ForEach(MyLGenericList, ParallelOptions, (MyObject, loopState) =>
{
MyObject.DoLoad();
MyObject.CreateImage();
MyObject.Dispose();
if (loopState.ShouldExitCurrentIteration || loopState.IsExceptional)
loopState.Stop();
});
}
catch (OperationCanceledException ex)
{
// Cancel here
}
catch (Exception ex)
{
throw ex;
}
Run Code Online (Sandbox Code Playgroud)
现在我的问题是:
在此先感谢:)亚当