Содержит ли BackgroundWorker.ReportProgress поток BackgroundWorker_DoWork? - PullRequest
1 голос
/ 29 июля 2011

Я использую BackgroundWorker для запуска потока, в свою очередь вызывающего функцию, которая, в свою очередь, вызывает Backgroundworker_ProgressChange через .ReportProgress ();

В ProgressChange я пытаюсь записать записи в файл журналас некоторой информацией, полученной через переданный объект.

Могу ли я предположить, что ProgressChange действительно содержит поток BackgroundWorker?Или я пропущу некоторые данные в моем журнале?

В частности, у меня есть ProgressChange, добавляющий элементы в список.Условно, если listbox.items.count> 15, я хотел бы перечислить listbox.items и записать их в файл журнала.

Я гибок с решением.Не обязательно, чтобы список не пропускал записи.

Спасибо,

Мэтт

1 Ответ

2 голосов
/ 29 июля 2011

Afaik Действия ProgressChanged опубликованы, поэтому DoWork не нужно ждать.Но какое это имеет значение для вас, пишущих деятельность?

Обновления Progress будут появляться последовательно, они не будут (не могут) перебивать друг друга.Просто будьте осторожны, чтобы не сделать их слишком медленными.

...