Backgroundworker.IsBusy всегда true - C#
Формулировка задачи:
В общем, есть метод, который должен делать дела, ждать секунду и продолжать делать дела.
В нем я вызываю BackgroundWorker, в котором жду секунду, ВРОДЕ КАК завершаю работу потока и выхожу дальше.
Выбрал самый наибанальнейший вариант, потому что пробовал по-разному - не получалось.
Код:
Но нифига, IsBusy все еще true после выполнения
Насколько я понимаю, именно так нужно закрывать поток?
Тыкните ошибку, пожалуйста:С
public void Animate() { Solver s = new Solver(_desk); foreach (var item in s.Solution) { //Делаем дела _form.Update(); _form.backgroundWorker1.RunWorkerAsync(); } } } ... public void backgroundWorker1_DoWork(object sender, System.ComponentModel.DoWorkEventArgs e) { BackgroundWorker bw = sender as BackgroundWorker; e.Cancel = true; Thread.Sleep(1000); }
e.Cancel = true;
Решение задачи: «Backgroundworker.IsBusy всегда true»
textual
Листинг программы
_form.BeginInvoke(new Action(delegate { _form.Update(); }));
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д