В моем приложении мне нужно выполнить серию шагов инициализации, для завершения которых требуется 7-8 секунд, в течение которых мой пользовательский интерфейс перестает отвечать на запросы. Чтобы решить эту проблему, я выполняю инициализацию в отдельном потоке:
public void Initialization()
{
Thread initThread = new Thread(new ThreadStart(InitializationThread));
initThread.Start();
}
public void InitializationThread()
{
outputMessage("Initializing...");
//DO INITIALIZATION
outputMessage("Initialization Complete");
}
Я прочитал несколько статей о том, BackgroundWorker
как и как это должно позволить мне поддерживать отзывчивость моего приложения без необходимости писать поток для выполнения длинных задач, но у меня не было никаких попыток реализовать его, кто-нибудь может сказать, как я это сделаю это используя BackgroundWorker
?