Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. Javascript Synchron

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Javascript Synchron

    This topic has been deleted. Only users with topic management privileges can see it.
    • P
      Pman last edited by

      @apollon77:

      EIne alternative ist die Frage "was sollte für die User der Standard sein"?

      ALso Vllt "setState" -> syncron und setStateAsync für die Profis? 🙂 `
      Damit würdest du jetzt alle jemals geschriebenen Skripte inkompatibel machen, ich glaube dafür ist es zu spät. :lol:

      1 Reply Last reply Reply Quote 0
      • apollon77
        apollon77 last edited by

        Oder sonderhandlung das sobald eine callback-Funktion beim aufruf verwendet wird es async wird 🙂

        Die meisten "aktuellen Skripte "behaupte ich mal gehen von einer synchronen ausführung aus …

        1 Reply Last reply Reply Quote 0
        • L
          looxer01 last edited by

          Hi,

          ich habe es bisher vermieden states anzulegen oder zu aendern und anschliessend zu verwenden oder abzufragen, zumindest innerhalb der gerade laufenden Routinen.

          Der synchrone Ablauf hat Vorteile, wenn es Abhängigkeiten gibt aber m.E. eine möglicherweise erhebliche Performanceeinbuße.

          Daher würde ich nicht unbedingt standardmaessig auf synchron umschalten. Oder denke ich falsch ?

          vG Looxer

          1 Reply Last reply Reply Quote 0
          • Thisoft
            Thisoft last edited by

            Das finde ich super, dass jetzt die Möglichkeit der synchronen Abarbeitung geschaffen wird 😄 😄 😄

            Ich wäre eindeutig für das Suffix "Sync". Damit bleibt die Kompatibilität gewahrt und man sieht auf Anhieb was man verwendet hat. Ein (optionaler) Parameter beim Aufruf wäre zwar auch eine gangbare Möglichkeit - finde ich aber wesentlich unübersichtlicher als die Variante mit Suffix.

            1 Reply Last reply Reply Quote 0
            • paul53
              paul53 last edited by

              @Thisoft:

              Ich wäre eindeutig für das Suffix "Sync". Damit bleibt die Kompatibilität gewahrt und man sieht auf Anhieb was man verwendet hat. Ein (optionaler) Parameter beim Aufruf wäre zwar auch eine gangbare Möglichkeit - finde ich aber wesentlich unübersichtlicher als die Variante mit Suffix. `
              Dem schließe ich mich an.
              @looxer01:

              …eine möglicherweise erhebliche Performanceeinbuße.

              Daher würde ich nicht unbedingt standardmaessig auf synchron umschalten. Oder denke ich falsch ? `
              Sehe ich auch so. Benötigt man die synchrone Variante wirklich ?

              1 Reply Last reply Reply Quote 0
              • Bluefox
                Bluefox last edited by

                Ich sehe die Anmerkung von apollon77 mit kein callback als gangbar.

                1 Reply Last reply Reply Quote 0
                • Jey Cee
                  Jey Cee Developer last edited by

                  Ich bin auch für Suffix 'sync'. Das drückt am deutlichsten aus was passiert und ist für Anfänger sicher einfach zu verstehen.

                  Gesendet von meinem m8 mit Tapatalk

                  1 Reply Last reply Reply Quote 0
                  • frankjoke
                    frankjoke last edited by

                    Ich finde es eine gute Idee aber leider wird es nicht wirklich Synchron und einige Lewute noch mehr verwirren.

                    Es scheint so zu funktionieren dass nur die ioBroker-Funktionen synchron sind, aber nicht der restliche code.

                    Sorry, zu früh abgesendet:

                    Beispiel:

                    function inc(xxx) {
                    	var x = getState(xxx).val
                    	x = x +1;
                    	setState(xxx,x);
                    }
                    
                    inc(abc);
                    inc(abc);
                    
                    wird nicht funktionieren.
                    
                    

                    bin eher dafür neue Dinge mit neuen NodeJS-Sprachversionen zu implementieren,

                    Ein Beispiel sind Promises (wie ich sie verwende) oder auch in der ganz neuen Version Yields.

                    1 Reply Last reply Reply Quote 0
                    • Bluefox
                      Bluefox last edited by

                      @fsjoke:

                      Ich finde es eine gute Idee aber leider wird es nicht wirklich Synchron und einige Lewute noch mehr verwirren.

                      Es scheint so zu funktionieren dass nur die ioBroker-Funktionen synchron sind, aber nicht der restliche code.

                      Sorry, zu früh abgesendet:

                      Beispiel:

                      function inc(xxx) {
                      	var x = getState(xxx).val
                      	x = x +1;
                      	setState(xxx,x);
                      }
                      
                      inc(abc);
                      inc(abc);
                      
                      wird nicht funktionieren.
                      
                      

                      bin eher dafür neue Dinge mit neuen NodeJS-Sprachversionen zu implementieren,

                      Ein Beispiel sind Promises (wie ich sie verwende) oder auch in der ganz neuen Version Yields. `
                      Genau das wird gehen Synchron.

                      1 Reply Last reply Reply Quote 0
                      • frankjoke
                        frankjoke last edited by

                        @Bluefox:

                        Genau das wird gehen Synchron. `

                        Dann gibt's auc einen dicken 'Daumen'-hoch von mir, am besten mit Sync-Endung 🙂

                        1 Reply Last reply Reply Quote 0
                        • AlCalzone
                          AlCalzone Developer last edited by

                          Verstehe ich das richtig, dass das die Implementierung wird, die ich mir Anfang des Jahres gewünscht habe? Eine synchrone (Promise-) Kapselung um die asnychronen Methoden?

                          Denke dann macht xxxSync() Sinn, ist vom Verständnis her analog zu den NodeJS-Libraries.

                          1 Reply Last reply Reply Quote 0
                          • Bluefox
                            Bluefox last edited by

                            @AlCalzone:

                            Verstehe ich das richtig, dass das die Implementierung wird, die ich mir Anfang des Jahres gewünscht habe? Eine synchrone (Promise-) Kapselung um die asnychronen Methoden?

                            Denke dann macht xxxSync() Sinn, ist vom Verständnis her analog zu den NodeJS-Libraries. `
                            Ne.. Promise ist doch Asynchron.

                            Es geht tatsächlich um synchrone Ausführung, damit die Leute, die aus Arduino- oder SPS- Welt kommen, immer noch zurecht kommen.

                            1 Reply Last reply Reply Quote 0
                            • AlCalzone
                              AlCalzone Developer last edited by

                              Ahhh…

                              Na dann ist der Name xxxSync erst recht passend. Find ich super!

                              1 Reply Last reply Reply Quote 0
                              • First post
                                Last post

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              851
                              Online

                              31.7k
                              Users

                              79.8k
                              Topics

                              1.3m
                              Posts

                              10
                              17
                              2823
                              Loading More Posts
                              • Oldest to Newest
                              • Newest to Oldest
                              • Most Votes
                              Reply
                              • Reply as topic
                              Log in to reply
                              Community
                              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                              The ioBroker Community 2014-2023
                              logo