【问题标题】:Patterns for delegating work to multiple threads将工作委托给多个线程的模式
【发布时间】:2010-03-03 22:17:17
【问题描述】:

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

问题在于,“一些有用的事情”会依次遍历一长串要做的事情,并且可能需要很长时间才能完成。

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

这两种方法对我来说似乎都相当。

两者都有优点/缺点吗?有没有更好的方法来做到这一点?

【问题讨论】:

    标签: winforms .net-4.0 backgroundworker


    【解决方案1】:

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

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

    PK :-)

    【讨论】:

    • 这是一个非常好的建议!我去看看,看看申请的难易程度。
    • 更改我现有的循环非常容易。阅读、学习曲线、实施和测试耗时 18 分钟。
    • .net 4 中有一些非常棒的东西! :-)
    猜你喜欢
    • 2019-01-08
    • 1970-01-01
    • 2016-04-20
    • 1970-01-01
    • 2019-10-09
    • 2011-05-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多