Calocybe: + (Forumsauslese) Prozessorauslastung

Beitrag lesen

Auch Hallo!

Ich habe eine Frage zum Artikel in der Forumsauslese: <../../sfausles/tsfa_tci.htm#a5>. Dabei ist mir folgendes aufgefallen. Die Funktion slide() (unten ist nochmal der Quelltext) ruft sich ja nach 1000 ms selbst wieder auf.
Wird dabei die aufrufende Funktion beendet, oder wartet diese, bis die aufgerufende Funktion beendet wird?

Keines von beiden. Es wird, wie der Funktionsname schon sagt, ein Timeout gesetzt. Das merkt sich der Browser / das OS im Hintergrund und beeinflusst die Ausfuehrung des aktuellen Codes nicht. Erst nach Ablauf des Timeouts wird urploetzlich der angegebene Code ausgefuehrt, wie von Geisterhand aufgerufen.

Wenn die aufrufende Funktion wartet, dann wird ja mit der Zeit immer mehr der Prozessor beansprucht. Das ist bei heutigen Hochleistungsmaschinen wohl zu vernachlässigen, aber man könnte dies ja ein wenig ändern.

Wenn die Funktion warten *wuerde*, muesste das trotzdem nicht den Prozessor belasten. Fuer solche Aufgaben stellt das OS normalerweise entsprechende Funktionen bereit. Leider gibt es ein solches sleep in JS nicht, aber die JS-Engine kann ja trotzdem Zugriff darauf haben.

Hier der alte Quelltext:

function slide()

Nebenbei: Wie zum Teufel kommt man auf den Namen slide fuer eine Funktion, die ein Blinken realisieren soll?

Hier mein Vorschlag (gesamter Quelltext)
[...]

Macht keinen Unterschied, ausser dass das Blinken leichter abgeschaltet werden kann.

So long