How do you notify the subscriber of the BackgroundWorker thread?

Again this is an another simple task with System.Component in .net

The code is straight forward.
  1. Create a BackgroundWorker object.
  2. Subscribe to the DoWorkEventHandler
  3. Subscribe to the RunWorkerCompletedEventHandler


namespace My_Samples
{
    using System;
    using System.ComponentModel;

    class Program
    {
        static void Main(string[] args)
        {
            BackgroundWorker worker = new BackgroundWorker();
            worker.DoWork += new DoWorkEventHandler(worker_DoWork);
            worker.RunWorkerCompleted += new RunWorkerCompletedEventHandler(worker_RunWorkerCompleted);
            worker.RunWorkerAsync();
            for (int i = 0; i < 10; i++)
            {
                Console.WriteLine("Main - " + i.ToString());
                System.Threading.Thread.Sleep(200);
            }

            Console.ReadLine();
        }
        static void worker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            Console.WriteLine("BackgroundWorker thread completed");
        }
        static void worker_DoWork(object sender, DoWorkEventArgs e)
        {
            for (int i = 0; i < 10; i++)
            {
                Console.WriteLine("worker_DoWork - " + i.ToString());
                System.Threading.Thread.Sleep(100);
            }
        }
    }
}

No comments:

Post a Comment