NEWS
Ausfal IP erst melden wenn mehr als 2 Minuten nicht erreichbar!
-
@rantanplan sagte:
Die Varible "timeout" hat nichts mit dem Timer "timeout" zutun.
Doch: Wenn die Variable timeout auf null gesetzt wird, kann der Timer nicht mehr mit clearTimeout(timeout) gestoppt werden, denn die Variable timeout "addressiert" den Timer.
-
@paul53 sagte in Ausfal IP erst melden wenn mehr als 2 Minuten nicht erreichbar!:
@rantanplan sagte:
Die Varible "timeout" hat nichts mit dem Timer "timeout" zutun.
Doch: Wenn die Variable timeout auf null gesetzt wird, kann der Timer nicht mehr mit clearTimeout(timeout) gestoppt werden, denn die Variable timeout "addressiert" den Timer.
??? Und warum läuft mein Beispiel durch?
-
@rantanplan sagte in Ausfal IP erst melden wenn mehr als 2 Minuten nicht erreichbar!:
??? Und warum läuft mein Beispiel durch?
Steht da doch. Wenn du die Variable timeout auf null setzt, dann macht das clear timeout nichts, sprich der Timer läuft durch.
Fehler gibt es (zumindest bei mir) keine. Dein Log sollte also die Meldungen in der folgenden Reihenfolge liefern:
Timer gestartet
Variable auf NULL gesetzt
Ups, ich bin trotzdem da -
@Asgothian sagte in Ausfal IP erst melden wenn mehr als 2 Minuten nicht erreichbar!:
Steht da doch. Wenn du die Variable timeout auf null setzt, dann macht das clear timeout nichts, sprich der Timer läuft durch.
Hmmm, der Sinn des Ganzen bleibt mir bleibt mir momentan noch verschlossen
-
@rantanplan sagte in Ausfal IP erst melden wenn mehr als 2 Minuten nicht erreichbar!:
Hmmm, der Sinn des Ganzen bleibt mir bleibt mir momentan noch verschlossen
Jo.. mir auch. In dieser Reihenfolge macht es keinen Sinn.
Wenn Du dir aber das Scriptbeispiel von mir oben anschaust, dann setze ich die Variable auf NULL in genau 3 Fällen
- am Anfang
- wenn der Timeout sauber durchgelaufen ist
- wenn der Timeout gelöscht wurde.
Und all das mit dem Ziel das ich über if timeout == NULL sicher prüfen kann ob der Timeout noch läuft, ohne eine Hilfsvariable zu spendieren.
A.
-
@Asgothian sagte in:
wenn der Timeout sauber durchgelaufen ist
Das ist die einzige Stelle, wo es sinnvoll ist, denn den Rest macht die Blockly-Funktion stop timeout bereits:
(function () {if (timeout) {clearTimeout(timeout); timeout = null;}})();
-
@Asgothian sagte in Ausfal IP erst melden wenn mehr als 2 Minuten nicht erreichbar!:
Und all das mit dem Ziel das ich über if timeout == NULL sicher prüfen kann ob der Timeout noch läuft, ohne eine Hilfsvariable zu spendieren.
Das muss ich mal verinnerlichen. Grundsätzlich gefällt mir die Idee Hilfsvariablen zu sparen.
Ich bin allerdings auch nicht so der Optimierungs-Freak, wenn es auf Kosten der Lesbarkeit geht. Werde es aber auf jeden Fall mal ausprobieren. -
@paul53 sagte in Ausfal IP erst melden wenn mehr als 2 Minuten nicht erreichbar!:
Das ist die einzige Stelle, wo es sinnvoll ist, denn den Rest macht die Blockly-Funktion stop timeout bereits:
Und da zeigt sich das ich Blockly schlecht kenne. Ich baue alle meine Scripte direkt inJS. Deswegen hab ich zur Sicherheit den Punkt mal mit eingebaut. Um so besser (und lesbarer) wenn es gar nicht notwendig ist.
-
@paul53 sagte in Ausfal IP erst melden wenn mehr als 2 Minuten nicht erreichbar!:
Das ist die einzige Stelle, wo es sinnvoll ist, denn den Rest macht die Blockly-Funktion stop timeout bereits:
(function () {if (timeout) {clearTimeout(timeout); timeout = null;}})();
Danke!
Jetzt wird ein Schuh daraus
-
so wieder da bin und dank @rantanplan, weiß ich jetzt auch wie man Debug Bausteine einsetzt
so ich mahc mich mal wieder an script, mal sehen ob ich das jetzt zusammen bekomme!