Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. CPU Berechnungs-Reihenfolge von Trigger Logiken

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    357

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.5k

CPU Berechnungs-Reihenfolge von Trigger Logiken

Geplant Angeheftet Gesperrt Verschoben Blockly
2 Beiträge 2 Kommentatoren 37 Aufrufe 3 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • B Offline
    B Offline
    Benji 0
    schrieb zuletzt editiert von
    #1

    Hallo zusammen und frohe Weihnachten.

    Wer kann mir erklären wie die IOBRoker CPU Berechnungs-Reihenfolge von Trigger Logiken funktioniert?

    Frage 1:
    Zwei Trigger Logiken mit zwei unterschiedlichen Triggern.
    Beide Trigger werden nacheinander aktiv. Werden dann die Trigger Logiken parallel in unterschiedlichen Cores abgearbeitet oder wird erst eine Trigger Logik beendet, bevor die andere Logik startet?

    Frage 2:
    Eine Trigger Logik mit zwei Triggern. Beide Trigger werden nacheinander aktiv. Dann wird die Trigger Logik einmal für Trigger A ausgeführt und anschließend für Trigger B, oder?

    Frage 3:
    Wenn zwei Varibalen in einer Trigger Logik zwingend hintereinander gesetzt werden sollten, um später woanders verwendet zu werden. Ist es theoretisch möglich, das direkt nach dem Setzen der ersten Variable eine andere Trigger Logik die erste Trigger Logik unterbricht und die Variablen nutzt ohne das die zweite Varibale gestetzt wurde?

    Beste Grüße
    Benjamin

    OliverIOO 1 Antwort Letzte Antwort
    0
    • B Benji 0

      Hallo zusammen und frohe Weihnachten.

      Wer kann mir erklären wie die IOBRoker CPU Berechnungs-Reihenfolge von Trigger Logiken funktioniert?

      Frage 1:
      Zwei Trigger Logiken mit zwei unterschiedlichen Triggern.
      Beide Trigger werden nacheinander aktiv. Werden dann die Trigger Logiken parallel in unterschiedlichen Cores abgearbeitet oder wird erst eine Trigger Logik beendet, bevor die andere Logik startet?

      Frage 2:
      Eine Trigger Logik mit zwei Triggern. Beide Trigger werden nacheinander aktiv. Dann wird die Trigger Logik einmal für Trigger A ausgeführt und anschließend für Trigger B, oder?

      Frage 3:
      Wenn zwei Varibalen in einer Trigger Logik zwingend hintereinander gesetzt werden sollten, um später woanders verwendet zu werden. Ist es theoretisch möglich, das direkt nach dem Setzen der ersten Variable eine andere Trigger Logik die erste Trigger Logik unterbricht und die Variablen nutzt ohne das die zweite Varibale gestetzt wurde?

      Beste Grüße
      Benjamin

      OliverIOO Offline
      OliverIOO Offline
      OliverIO
      schrieb zuletzt editiert von OliverIO
      #2

      @Benji-0

      JavaScript und Node sind nur single threaded.
      Der JavaScript Adapter ist nur ein einziger Prozess.
      D.h. Innerhalb eines Prozesses kann zur gleichen Zeit exakt nur eine Anweisung ausgeführt werden.
      Jeder Aufruf einer Funktion, arrow function, event erzeugt einen Eintrag im call stack der dann der Reihe nach vom Event Loop abgearbeitet wird. Dazwischen kommen noch ein paar Management Aufgaben wie bspw garbage collection.

      Aufgrund der kleinteiligen Unterteilung in diesem Schema kann man jetzt nicht exakt sagen erst wenn trigger 1 fertig ist wird trigger 2 abgearbeitet. Das kann durchaus verschachtelt passieren. Gestartet werden sie aber schon der Reihe nach.
      Je nach abarbeitungsdauer kann das Ende aber auch unterschiedlich sein.

      Wenn man will kann man mit Node auch Multi threaded programmieren. Dazu muss man allerdings selbst die neuen threads erzeugen und muss auch das ganze Management (evtl. Sync der threads miteinander, warten auf abhängige Abarbeitung, etc.) unter dem variablenraum worker_threads gibt es die entsprechenden Funktionen. Mit exec kann man einen eigenen Node Prozess starten das hat dann entsprechend mehr overhead.

      https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Execution_model

      https://nodejs.org/en/learn/asynchronous-work/overview-of-blocking-vs-non-blocking#concurrency-and-throughput

      Meine Adapter und Widgets
      TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
      Links im Profil

      1 Antwort Letzte Antwort
      0
      Antworten
      • In einem neuen Thema antworten
      Anmelden zum Antworten
      • Älteste zuerst
      • Neuste zuerst
      • Meiste Stimmen


      Support us

      ioBroker
      Community Adapters
      Donate

      486

      Online

      32.5k

      Benutzer

      81.8k

      Themen

      1.3m

      Beiträge
      Community
      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
      ioBroker Community 2014-2025
      logo
      • Anmelden

      • Du hast noch kein Konto? Registrieren

      • Anmelden oder registrieren, um zu suchen
      • Erster Beitrag
        Letzter Beitrag
      0
      • Home
      • Aktuell
      • Tags
      • Ungelesen 0
      • Kategorien
      • Unreplied
      • Beliebt
      • GitHub
      • Docu
      • Hilfe