Reihenfolge gleichzeitiger Ereignisse

Begonnen von dantist, 28 August 2016, 22:05:17

Vorheriges Thema - Nächstes Thema

dantist

Hallo zusammen,

ich habe öfter den Fall, dass zwei Ereignisse zeitgleich ausgelöst werden, z.B. das Triggern zweier Notifies. Wie verhält sich FHEM da bezüglich der Reihenfolge? Passiert das zufällig, oder gibt es Prioritäten/Regeln?

Konstruiertes Beispiel mit zwei gleichzeitig getriggerten Notifies:

- Dummy steht auf "false"
- Notify A setzt Dummy auf "true"
- Notify B ruft eine Funktion auf, die den Dummy ausliest. Ist das Ergebnis dann true, false, oder nicht vorhersehbar?

Schöne Grüße
Dan

justme1968

es wird alles streng sequentiell abgearbeitet.

die reihenfolge in der notify abgearbeitet werden hängt vom NTFY_ORDER internal ab und ist mehr oder weniger mit ausnahmen alphabetisch.

wenn A den dummy auf true setzt ist er beim aufruf von B true. $EVENT hat aber bei diesem aufruf immer noch den auslösenden wert. also false.

im anschluss kommt aber noch mal ein event für das true. dieses event ruft aber nur das notify B auf.

das kann man übrigens ganz einfach selber probieren :):
define dummy dummy
define A notify dummy {fhem('set dummy true');Log 1, "A: $EVENT ".Value('dummy')}
define B notify dummy {Log 1, "B: $EVENT ".Value('dummy')}
set dummy false
und dann ins log schauen.



gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968