In meiner Anwendung muss ich eine Reihe von Initialisierungsschritten ausführen. Diese dauern 7 bis 8 Sekunden, während derer meine Benutzeroberfläche nicht mehr reagiert. Um dies zu beheben, führe ich die Initialisierung in einem separaten Thread durch:
public void Initialization()
{
Thread initThread = new Thread(new ThreadStart(InitializationThread));
initThread.Start();
}
public void InitializationThread()
{
outputMessage("Initializing...");
//DO INITIALIZATION
outputMessage("Initialization Complete");
}
Ich habe ein paar Artikel darüber gelesen BackgroundWorker
und wie es mir ermöglichen sollte, meine Anwendung reaktionsfähig zu halten, ohne jemals einen Thread schreiben zu müssen, um langwierige Aufgaben auszuführen, aber ich hatte keinen Erfolg bei der Implementierung, könnte jemand sagen, wie ich es machen würde dies mit dem BackgroundWorker
?