У меня есть код, похожий на последний код в этой ссылке:
http://msdn.microsoft.com/en-us/library/system.componentmodel.backgroundworker.aspx
Но метод ComputeFibonacci находится внутри другого класса, поэтому мой метод doWork будет таким:
private void backgroundWorker1_DoWork(object sender,
DoWorkEventArgs e)
{
BackgroundWorker worker = sender as BackgroundWorker;
e.Result = new MyClass().ComputeFibonacci((int)e.Argument, worker, e);
}
Мой код блокирует приложение навсегда, когда я использую worker.ReportProgress (процентComplete);
внутри метода Фибоначчи, который находится в другом классе. Я думаю, проблема в том, что backgroundWorker1_ProgressChanged находится внутри другого класса, а не MyClass.
Что мне делать, пожалуйста?
Если я поместу метод Фибоначчи в тот же класс, проблема не возникнет. Но в моем случае не имеет смысла помещать код в тот же класс.
Спасибо