En mi aplicación, necesito realizar una serie de pasos de inicialización, estos tardan entre 7 y 8 segundos en completarse, durante los cuales mi IU deja de responder. Para resolver esto, realizo la inicialización en un hilo separado:
public void Initialization()
{
Thread initThread = new Thread(new ThreadStart(InitializationThread));
initThread.Start();
}
public void InitializationThread()
{
outputMessage("Initializing...");
//DO INITIALIZATION
outputMessage("Initialization Complete");
}
He leído algunos artículos sobre BackgroundWorker
y cómo debería permitirme mantener mi aplicación receptiva sin tener que escribir un hilo para realizar tareas largas, pero no he tenido éxito tratando de implementarlo, ¿alguien podría decir cómo lo haría? esto usando el BackgroundWorker
?