将工作委托给多个线程的模式

时间:2010-03-03 22:17:18

标签: winforms .net-4.0 backgroundworker

我正在更新一个WinForms应用程序,该应用程序使用BackgroundWorker在按下按钮时执行一些有用的操作。

麻烦的是,“有用的东西”按顺序迭代一系列要做的事情,可能需要很长时间才能完成。

我正在考虑让按钮按下事件创建多个BackgroundWorkers而不是一个,或者让当前的BackgroundWorker创建额外的BackgroundWorkers来完成实际工作。

这两种方法看起来都与我相当。

两者都有优点/缺点吗?有更好的方法吗?

1 个答案:

答案 0 :(得分:1)

您是否考虑过将后台工作人员与Parallel.For一起使用? (Parallel.For @ msdn

管理多个工作人员可能是个问题 - 这就是Parallel扩展所做的事情......

PK: - )