Moin moin,
ich benötige einen Ausstieg aus einer While schleife, wenn diese nicht durch ihre ursprüngliche Aufgabe beendet wird.
Dazu habe ich mir folgendes überlegt:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21:
| bool exit = false
DateTime maxTime = new DateTime(); maxTime = DateTime.Now; maxTime.Add(new TimeSpan(0,0,30));
while(!exit) { try{ DateTime currentTime = new DateTime(); currentTime = DateTime.Now; if(DateTime.Compare(maxTime,currentTime)<0) { exit = true; } exit = true; } catch{} } |
Eigendlich sollte der code die Schleife 30 Sekunden nach dem Startzeitpunkt beenden,
leider funktioniert das nicht so wie ich mir das vorgestellt habe...
Die schleife läuft jedes maö in den Block der If bedingung und das schon deutlich eher.
Hat jemand ne idee was ich falsch mache? Gibts ne elegantere Lösung?
Würd mich über Rat freuen!