Я предполагаю, что вы не хотите блокировать и ждать в RunWorkerAsync () результатов (если бы вы это сделали, не было бы никакой причины запускать async!
Если вы хотите получать уведомление о завершении фонового процесса, подключите событие RunWorkerCompleted. Если вы хотите вернуть какое-либо состояние, верните его в элемент Result аргументов событий DoWork.
РЕДАКТИРОВАТЬ: я отправил преждевременно - закончил мой пример кода
Пример:
private void BackgroundWorker_DoWork(object sender, DoWorkEventArgs e)
{
// do your thing
....
// return results
e.Result = theResultObject;
}
// now get your results
private void BackgroundWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
{
MyResultObject result = (MyResultObject)e.Result;
// process your result...
}