2010-03-03 39 views
3

我正在更新使用BackgroundWorker在按下按鈕時執行一些有用的操作的WinForms應用程序。將工作委託給多個線程的模式

問題是,「有用的東西」依次循環執行一長串事情,並且可能需要很長時間才能完成。

我在考慮讓按鈕按下事件創建多個BackgroundWorkers而不是一個,或讓當前的BackgroundWorker創建額外的BackgroundWorkers來做實際的工作。

這兩種方法看起來都與我相當。

兩者都有優點/缺點嗎?有一個更好的方法嗎?

回答

1

你看過使用Parallel.For的背景嗎? (Parallel.For @ msdn

管理多個工人可能是一個問題 - 這是一種並行的擴展做的事...

PK :-)

+0

這是一個非常好的建議!我會看看,看看它是多麼容易申請。 – 2010-03-03 22:28:30

+0

改變我現有的循環非常簡單。閱讀,學習曲線,實施和測試花了18分鐘。 – 2010-03-03 22:47:05

+0

.net 4有一些非常棒的東西! :-) – 2010-03-03 23:09:50