【问题标题】:Implementing Custom BackgroundWorker实现自定义 BackgroundWorker
【发布时间】:2011-12-27 15:15:20
【问题描述】:

我正在尝试在 .NET 1.1 中实现 BackgroundWorker(因为没有),但我不太精通线程和委托。

现在我有一个名为 BackgroundWorker 的类,其方法名为 DoWork。我知道我必须在 BackgroundWorker 中创建一个线程并在该线程中执行一个委托,但有两件事我还不太清楚。

  1. 如果 DoWork 收到无参数委托,如何在 BackgroundWorker 中启动线程?还是应该使用委托以外的其他方法?

  2. 如何实现ProgressChanged 事件?

【问题讨论】:

  • 真的不是升级到 .NET 2.0 的选项(BackgroundWorker确实存在)吗?据我所知,每个 1.1 平台都支持 .NET 2.0,因此您不会丢失任何东西。
  • 不,不是(就像我尝试过的那样)。
  • 不要选择不升级,如果他们想要这个功能,那么就必须升级。
  • 他们并不关心 BackgroundWorker 本身,我知道这是最好的选择,虽然不是最简单的编码,但维护消耗的代码可能更容易,而不是全部实现线程结束了。

标签: .net multithreading backgroundworker .net-1.1


【解决方案1】:

【讨论】:

  • 我一直在阅读这方面的内容,但我似乎没有找到 DoWorkEventArgs 类的声明或实现,它也不属于 .NET-1.1 的一部分。
  • 文章中有。公共类 DoWorkEventArgs : CancleEventArgs { public bool Result{get;set;} public readonly object Argument; }
猜你喜欢
  • 1970-01-01
  • 2014-02-01
  • 2014-10-14
  • 2011-06-04
  • 2010-10-29
  • 2011-01-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多