Der Martin: JQuery, Funktionen und Anonyme Funktionen

Beitrag lesen

Hallo,

Das ist wirklich eine Katastrophe. Kann es sein, dass früher so gescriptet wurde? Das man die überwachung von Elementen tatsächlich in Schleifen realisiert hatte?
Das wurde und wird in vielen Bereichen so gemacht. Teilweise ist das schlechtes Design, aber teilweise ist es auch eine technische Notwendigkeit. Etwa auf einem Mikrocontroller, wenn dort die Interrupts für Buttons deaktiviert sind, ist das Pullen der Zustände die einzige Möglichkeit auf Eingaben zu reagieren.

du meinst Pollen (zyklisch Abfragen)? ;-)

Ja, das wird in dem Bereich häufig noch so gemacht. Allerdings legt man die Programmstruktur dann gern in einer großen Endlosschleife an, so etwas wie hier in C-Pseudocode skizziert:

while (1)  
 { if (isKeyPressed())           // Taste gedrückt?  
      ProcessKeypad();           // Keypad abfragen, Tastencode speichern  
  
   if (isCommReady())            // Zeichen an der Sellerie-Schnittstelle?  
      ProcessComm();             // Schnittstelle bedienen  
  
   if (isTimerElapsed())         // Timer abgelaufen?  
      DoCyclicJobs();            // zeitabhängige Aufgaben erledigen  
  
   DoProcessIO();                // Prozess-Ablaufsteuerung bedienen  
   UpdateDisplay();              // Display (fals vorhanden) auffrischen  
   RetriggerWatchdog();          // Hardware-Watchdog beruhigen  
 }

Wesentich ist, dass jeder dieser Funktionsaufrufe nur kurze Ausführungszeiten hat und auf keinen Fall wartet, sondern den entsprechenden Schritt einfach übergeht (z.B. bei der Tastenabfrage). Dann ist nämlich gewährleistet, dass das System nicht irgendwie "hängenbleibt", sondern in einem Quasi-Multitasking durchläuft; wenn man aufpasst, bleibt das System sogar echtzeitfähig.

Die letzte Anweisung ist sozusagen der Totmann-Schalter: Sollte der Programmablauf durch einen groben Fehler doch mal in einer der Funktionen längere Zeit steckenbleiben, wird der Watchdog-Chip nicht mehr regelmäßig nachgetriggert und löst nach einer angemessenen Gnadenfrist (je nach System ein paar Millisekunden bis einige Sekunden) einen RESET aus.

So long,
 Martin

--
Drei Sachen vergesse ich immer wieder: Telefonnummern, Geburtstage und ... äääh ...
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
0 49

problem

Nightloewe
  • javascript
  1. 0
    Klawischnigg
    1. 0
      Jeena Paradies
  2. 0
    Jeena Paradies
    1. 0
      Malcolm Beck´s
      1. 0
        Der Martin
        1. 0
          Malcolm Beck´s
          1. 0
            Der Martin
            1. 0
              Malcolm Beck´s
              1. 0
                Der Martin
                1. 0
                  Malcolm Beck´s
                  1. 0
                    Der Martin
                    1. 0
                      Malcolm Beck´s
        2. 0
          molily
      2. 7
        1UnitedPower
        1. 0

          Korrektur am Codebeispiel

          1UnitedPower
        2. 0
          Malcolm Beck´s
          1. 0
            1UnitedPower
            1. 0
              Malcolm Beck´s
              1. 0
                1UnitedPower
                1. 0

                  JQuery, Funktionen und Anonyme Funktionen

                  Malcolm Beck´s
                  1. 0
                    1UnitedPower
                    1. 0
                      Malcolm Beck´s
                      1. 0
                        1UnitedPower
                        1. 0
                          Malcolm Beck´s
                    2. 0
                      Der Martin
                      1. 0
                        1UnitedPower
                      2. 0
                        Malcolm Beck´s
                        1. 0
                          Der Martin
                          1. 0
                            Malcolm Beck´s
        3. 0
          molily
        4. 3
          molily
          1. 0
            1UnitedPower
      3. 0
        Klawischnigg
      4. 0

        Gibt es Benchmark-Tools für Seiten mit Javascript?

        Malcolm Beck´s
  3. 0
    MudGuard
  4. 0
    Nightloewe
  5. 1

    Sinnvoller Titel, Problembeschreibung

    Der Martin
    • zu diesem forum
    1. 0
      Gunnar Bittersmann
      1. 0
        Der Martin
        1. 0
          Gunnar Bittersmann
          1. 0
            misterunknown
            1. 0
              Gunnar Bittersmann
              1. 0
                misterunknown
                1. 0
                  Gunnar Bittersmann
                  1. 0
                    Matthias Apsel
                    1. 0
                      Gunnar Bittersmann
                  2. 0
                    misterunknown
                    1. 0
                      Gunnar Bittersmann