你能链接到一个使用BackgroundWorker的好例子,而不把它作为组件放在表单上吗

本文关键字:组件 表单 链接 一个 BackgroundWorker | 更新日期: 2023-09-27 17:59:10

我记得很多年前(2005年)我在代码中使用BackgroundWorker,但没有使用可视化组件,但我记不清是如何使用的(不幸的是,我很健忘,在停止使用后很快就忘记了一切)。也许我是在延长BackgroundWorker课程。你能链接到这样使用BackgroundWorker的一个好例子吗?

你能链接到一个使用BackgroundWorker的好例子,而不把它作为组件放在表单上吗

本文清楚地解释了您所需要的一切。

以下是使用BackgroundWorker:的最低步骤

  1. 实例化BackgroundWorker并处理DoWork事件
  2. 调用RunWorkerSync,可以选择使用对象参数

这就启动了它。传递给RunWorkerSync的任何参数都将通过事件参数的argument属性转发给DoWork的事件处理程序。这里有一个例子:

class Program
{
  static BackgroundWorker _bw = new BackgroundWorker();
  static void Main()
  {
    _bw.DoWork += bw_DoWork;
    _bw.RunWorkerAsync ("Message to worker");
    Console.ReadLine();
  }
  static void bw_DoWork (object sender, DoWorkEventArgs e)
  {
    // This is called on the worker thread
    Console.WriteLine (e.Argument);        // writes "Message to worker"
    // Perform time-consuming task...
  }
}