Thread Verzögerung von Ereignissen (17 answers)
Opened by piet at 2015-06-02 16:18

Gast piet
 2015-06-03 11:42
#181244 #181244
Hallo,

2015-06-03T08:16:06 Raubtier
Ich verstehe deine Hauptschleife nicht. Was soll Timer(5s) tun?

Mach doch mal ein Beispiel. Wenn jetzt i > 100, dann soll 5 Sekunden später etwas ausgegeben werden? Wenn ja, nur genau einmal? Und wenn i während der 5s wieder unter 100 fallen sollte, was ist dann? Und wenn dann i wieder > 100 ist, was ist dann? Starten die 5s dann erneut oder läuft die Zeit dann weiter?


Hier ein Beispiel

Code: (dl )
1
2
if $i > 100 && timer_start("timer_1", 5s)   // Timer_1 startet und läuft solange $i > 100 bleibt
Funktion z.B. erzeuge Meldung

oder
Code: (dl )
1
2
if timer_start("timer_1",$i > 100, 5s)   // Timer_1 (irgend eine Name) startet und läuft solange $i > 100 bleibt
Funktion z.B. erzeuge Meldung



Wenn also [also = schönes Wort :-) ] $i > 100 ist/wird, starten/laufen die z.B. 5 Sekunden. d.h. Bedingung für den Timer ist immer die Bedingung $i > 100
Als Rückgabewert bringt der timer_start("timer_1", 5s)
1. 0=Zeit läuft noch
2. 1=Zeit ist abgelaufen
Während die Zeit läuft bringt die timer_restzeit("timer_1") die Restzeit zurück (schön für die Visualisierung ...., könnte aber auch irgendwie über den Rückgabewert von timer_start erfolgen oder eine interne Variable des "Timers" z.B. $restzeit = timer_1 => restzeit)

Wird während der "Timerlaufzeit" $i <= 100 stoppt der Timer wieder. Rückgabewert wäre wieder "0"
Steigt der Wert wieder $i > 100 startet der Timer erneut von vorne.

Andere Varianten des Timers (Zeit läuft weiter obwohl Bedingung wieder "0" wird) kann ich danach selbst ableiten.

Bitte melden falls etwas unklar ist.

Gruß
piet
Last edited: 2015-06-03 12:02:36 +0200 (CEST)

View full thread Verzögerung von Ereignissen