Hallo, ich würde gerne innerhab einer switch-case Anweisung eine zeitliche Verzögerung von bestimmmter Zeit einbauen. Also jeder case würde nur nach einer bestimmten Zeit Befehle ausgeben. Es gibt hier sicher viele Möglichkeiten das zu machen, und ich habe auch schon einige Ideen wie ich das umsetzen könnte, allerdings frage ich mich gerade wie man das wohl am elegantesten löst. Wohlbemerkt soll die Verzögerung über eine einstellbare Zeit funktionieren, und nicht nur einen Programmablauf lange verzögern. Für ein paar Ideen wäre ich euch sehr dankbar. Das wohl naheliegenste wäre eine Funktion zu implementieren, die in jedem case aufgerufen wird, und erst nach ablauf der Zeit eine If-Abfrage bedient. Allerdings könnte man das sicherlich auch durch eine andere Konstruktion der switch-case Anweisungen selbst lösen. Danke für eure Gedankenanstöße Herbert
Ich sollte vielleicht noch hinzufügen, daß es sich um C handelt :)
....der bestehende Thread liefert allerdings auch keine guten Antworten :( wie gesagt. Ich will nur um ein paar Millisekunden (aber die genau einstellbar) verzögern und das ganze so elegant und gut lesbar wie möglich.
Herbert Feuerstein schrieb: > wie gesagt. Ich will nur um ein paar Millisekunden (aber die genau > einstellbar) verzögern und das ganze so elegant und gut lesbar wie > möglich. Warum nicht eine Funktion bauen, die aktiv eine einstellbare Zeit wartet, und sie in jedem Case-Zweig aufrufen?
Hallo, Markus W. schrieb: > Warum nicht eine Funktion bauen, die aktiv eine einstellbare Zeit > wartet, und sie in jedem Case-Zweig aufrufen? Oder in jedem Case-Zweig eine Variable mit der Wartezeit definieren und nach dem Case-Zweig die Wartefunktion aufrufen? Mit freundlichen Grüßen Guido
Guido schrieb: > Oder in jedem Case-Zweig eine Variable mit der Wartezeit definieren und > nach dem Case-Zweig die Wartefunktion aufrufen? Stimmt, ist geschickter, aber dann frag ich mich, warum man nicht gleich ein Array nimmt, in dem man die Wartezeit definiert. Wäre schneller. Andererseits will man ja Zeit verbraten. Aber warum unbedingt per switch/case? Bin mir nicht sicher, ob ich den Thread-Ersteller richtig verstanden habe... "Also jeder case würde nur nach einer bestimmten Zeit Befehle ausgeben." Das heißt, die Zeitschleife müsste tatsächlich in jeden case-Abschnitt eingebaut werden, und zwar immer gleich am Anfang, weil danach noch "Befehle ausgegeben" werden.
Ehe man da weitermacht, sollte man sich fragen, ob Zeitschleifen überhaupt der richtige Weg sind, oder ob nicht eine Uhr, die zu bestimmten Zeitpunkten Aktionen auslöst der richtigere Weg wären.
Danke für die Antworten, @Karl Heinz Buchegger: Genau. Ich mache das auch mit einer Uhr und nicht mit Zeitschleifen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.