sto usando il lavoratore sfondo di fare un'operazione costosa:riutilizzare la BackgroundWorker più di una volta
backgroundWorker1.DoWork += new DoWorkEventHandler(backgroundWorker1_DoWork);
backgroundWorker1.ProgressChanged += new ProgressChangedEventHandler(backgroundWorker1_ProgressChanged);
backgroundWorker1.RunWorkerCompleted += new RunWorkerCompletedEventHandler(backgroundWorker1_RunWorkerCompleted);
backgroundWorker1.RunWorkerAsync(inputs);
Alla fine ho questo:
void backgroundWorker1_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
{
Messagebox.Show("Done with expensive operation 1"};
}
ora ho un'altra operazione costosa. Posso riutilizzare questo stesso background worker. Ora voglio nuove funzioni di callback come io non voglio istruzioni switch sul ProgressChanged e DoWork callback per determinare se sto facendo il funzionamento 1 o 2.
è solo semplice da utilizzare 2 separate classi sfondo lavoratore