List als Argument an BackgroundWorker

11/11/2009 - 10:09 von Dirk Herwig | Report spam
Hallo,

ist es möglich, eine Liste List<T> als Argument an einen Backgroundworker zu
übergeben?

Ich habe eine Liste von Dateien, welche von einem Webservice geladen werden
sollen in regelmàßigen Abstànden. Damit mein Hauptprogramm nicht einfriert
in der Zeit, möchte ich die Downloads in einem anderen Thread machen. Ich
bin dabei auf den BackgroundWorker gestoßen. Wenn ich darin dann die Liste
abarbeiten könnte, wàre mir sehr geholfen.

Wie kann ich das umsetzen? Könnt Ihr mir ein paar Tipps geben, wie man sowas
am besten lösen kann?

Dirk
 

Lesen sie die antworten

#1 Elmar Boye
11/11/2009 - 10:49 | Warnen spam
Hallo Dirk,

"Dirk Herwig" schrieb ...
ist es möglich, eine Liste List<T> als Argument an einen Backgroundworker zu übergeben?



Ja, sicherlich. Der Backgroundworker ermöglicht die Übergabe eines Arguments,
siehe http://msdn.microsoft.com/de-de/lib...45419.aspx
"BackgroundWorker.RunWorkerAsync-Methode"

Ich habe eine Liste von Dateien, welche von einem Webservice geladen werden sollen in regelmàßigen Abstànden.



Die Liste die Du dabei übergibst, sollte sich nach der Übergabe nicht
mehr durch den Hauptthread veràndert werden, damit es zu keinen
Synchronisationsproblemen kommt, wie nachzulesen in
http://msdn.microsoft.com/de-de/lib...txz50.aspx
"Übersicht über ereignisbasierte asynchrone Muster"

Wie kann ich das umsetzen?



Ansonsten kannst Du http://msdn.microsoft.com/de-de/lib...29675.aspx
"Gewusst wie: Downloaden einer Datei im Hintergrund"
nur eben um die Liste als Argument erweitern.

Gruß Elmar

Ähnliche fragen