Entwickler-Ecke
Basistechnologien - Backgroundworker arbeitet nicht mehr
nitin2211 - Mo 06.04.09 12:04
Titel: Backgroundworker arbeitet nicht mehr
Hallo
Ich habe ein Programm dass mit 2 Backgroundworkern arbeitet. Diese sind dazu da ein Filehandling zu übernehmen... also ZIP Dateien entpacken und hin und her auf verschiedene Server zur weiteren Verarbeitung kopieren.
Das Programm läuft bestens, bis auf der Tatsache, dass jedes Mal nach dem Wochenende (wo sich gar nix tut und er einfach so wartet) ein Backgroundworker nicht mehr arbeitet (er soll einen Ordner auf einen bestimmten Dateityp kontrollieren). Wenn ich den Prozess stoppe(ist durch einen Button im Programm möglich) und wieder neu starte funktioniert alles wieder wie vorher. StackOverflow kann es nicht sein, weil es keine rekurisven Methodenaufrufe gibt. Es gibt lediglich eine "endlosschleife" in der er einfach wartet, die mit einem Sleep verzögert wird. Gibt es irgendwelche Ansätze wo das Problem liegen könnte? Ich habe keinen ähnlichen Fall im Internet gefunden... das wichtige an der Applikation ist, dass sie "unendlich" lange laufen soll, dass heißt deswegen so wartungsfrei wie möglich sein sollte.
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29:
| private void out() { int wait = 3000; while (out_active) { if (!out_bgw.CancellationPending) { if (out_progress == 0) { out_msg = "Warte auf Dateien...\r\n"; } else { arbeiten(); out_progress = 1; out_msg += "Fertig\r\n"; } } else { out_msg = "Wird abgebrochen...\r\n"; } out_bgw.ReportProgress(out_progress); takeNap(wait, out_bgw); } } |
Danke im vorraus!
lg Nitin
Moderiert von
Kha: Code- durch C#-Tags ersetztModeriert von
Christian S.: Topic aus C# - Die Sprache verschoben am Mo 06.04.2009 um 18:35
nitin2211 - Di 07.04.09 16:31
Hallo
Hab den Fehler inzwischen gefunden.
Es hat daran gelegen, dass der Server wo er den bestimmten Dateityp sucht, am Wochenende gewartet wird. Das heißt, dass die Maschine neu gestartet wird. Mein Programm hat den Pfad verloren und nicht mehr wieder gefunden (und noch nichtmal eine fehlermeldung ausgegeben). Also der Backgroundworker war in ordnung.
mfg Nitin
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!