Mirko: gibt es eine art 'sleep-funktion' ?

Beitrag lesen

Hi!

Daran hatte ich auch schon gedacht, aber das funktioniert so leider nicht :-(
Er wartet zwar 5 sek. bis er Nix() aufruft, arbeitet aber bis dahin brav all das ab, was nach der setTimeout anweisung noch kommt (setTimeout() ist quasi so eine art timer-interrupt-handler)

Jepp.
Du könntest aber z.B. eine Variable setzen, wo du gerade warst, und diese dann beim nächsten Funktionsaufruf abfragen:

var wobinich=1;

function irgendwas()
{
    if (wobinich==1) {
       /* mach irgendwas */
       setTimeOut("irgendwas()",5000);
    }
    if (wobinich==2) {
       /* mach weiter */
       setTimeOut("irgendwas()",5000);
    }
    wobinich++;
}

Aber Vorsicht, daß du nicht das Flag im if-Bereich hochsetzt und dadurch die nächsten Bedingungen wahr macht!

Kann man hier vielleicht mit funktionen zur uhrzeit was tricksen?

Könnte etwa so gehen:

jetzt = new Date();
biswann = jetzt.getTime() + 5000;
while (jetzt.getTime() < biswann) {}

Aber ich nehme stark an, daß die setTimeOut-Methode CPU-freundlicher ist...

Bis denn dann...

Kommt mir jetzt irgendwie bekannt vor... ;)

Ciao,
Mirko