+ Antworten
Ergebnis 1 bis 5 von 5
  1. #1
    Registriert seit
    Dec 2012
    Ort
    Großraum Stuttgart ...
    Beiträge
    668

    Standard Semaphore Einsatz...

    Hallo zusammen,

    nutzt ihr einen Semaphore um das Script von anderen Aufrufen kurzweilig zu blockieren?

    Momentan bin ich gerade dabei meine Licht Ansteuerungen etc. umzubauen.
    Durch den Umbau ergibt sich das ich alle meine Wünsche mit einem Script abdecken kann.
    Das Script benötige ich aber an sehr vielen Stellen. Um sicher zu stellen bzw. wenn ich
    im Script was ändere das ich dann nicht in unendlich vielen Scripten alle Anpassungen durchziehen muss.

    Setzt ihr den Semaphore so auch ein ?


    Gruß
    MacToolz
    Win10 IPS 5.0, ZWave (Fibaro), ZigBee (Osram), EnOcean (Eltako), Homematic, Philips, Beckhoff CX2030, W&T Ethernet/RS485 ...

  2. #2
    Registriert seit
    Jul 2014
    Ort
    Hannover
    Beiträge
    135

    Ja, ich benutze es in einigen Modulen, hauptsächlich an stellen in denen ich eine Konfiguration ändere. Damit stelle ich sicher das eine Änderung abgeschlossen ist bevor ein neuer Aufruf der betreffenden Funktion erfolgt.
    CU Xaver

  3. #3
    Registriert seit
    Dec 2012
    Ort
    Großraum Stuttgart ...
    Beiträge
    668

    Hallo,

    der Einsatz von einem Semaphore macht der auch Sinn wenn man nur eine Funktion in einem Script implementiert hat ?.


    Gruß
    MacToolz
    Win10 IPS 5.0, ZWave (Fibaro), ZigBee (Osram), EnOcean (Eltako), Homematic, Philips, Beckhoff CX2030, W&T Ethernet/RS485 ...

  4. #4
    Registriert seit
    Jul 2014
    Ort
    Hannover
    Beiträge
    135

    Da Scripte parallel gestartet werden können , also theoretisch gleichzeitig , kommt es auf dein Script an.
    Der Sinn ist ja folgender.

    in deiner Funktion liest du zb. Daten aus einer Quelle (1) und verarbeitest diese.
    Dafür benötigt deine Funktion , wenn auch nur wenig, Zeit (2)
    nach der Bearbeitung speichert deine Funktion die Daten wieder (3)

    Wird dein Script bzw Funktion während diese Zeit(2) durch ein Ereignis nochmals aufgerufen (parallel)
    liest sie die Daten(1) eventuell bevor der erste Aufruf die Daten gespeichert hat(3).
    Dadurch arbeitet Sie mit alten werten und kann, je nach Komplexität , falsche Ergebnisse liefern.

    In der Regel kommt dieser Fall jedoch selten vor. Je länger jedoch deine Funktion/Script zum bearbeiten der Daten braucht
    desto größer wird die Möglichkeit eines parallelen Aufrufs.

    Ich hoffe es ist einigermaßen verständlich

    Xaver

  5. #5
    Registriert seit
    Dec 2009
    Ort
    Berlin
    Beiträge
    905

    Sehr praxisnah und für mich verständlich erläutert 👍🏻
    Gruss lueralba
    __________________
    IPS 5.2 Ninja auf Raspi3 ; Mobile5.x ; AEON Stick/1x Razberry Gen5 ; ca. 90 ZWave Geräte ; 10x FHT80B ; CCU1 (Funk/Wired);Fritzbox 7590 ; Viessmann ; 1x ChuWi13 ; 2x Sensus HRI und 1xEltako DSZ12DM an PiiGAB M-Bus; Instar 4011; AXIS 207W; RG-11

Ähnliche Themen

  1. Semaphore
    Von yoggi im Forum General Discussion
    Antworten: 11
    Letzter Beitrag: 16.07.19, 15:08
  2. IP-Symcon im gewerblichen Einsatz...
    Von DanielW im Forum Projekt Showcase
    Antworten: 1
    Letzter Beitrag: 20.04.17, 08:07
  3. Einsatz im Aussenbereich
    Von kronos im Forum IPS-868 / ProJET, XBee, ZigBee, XPort
    Antworten: 10
    Letzter Beitrag: 11.04.11, 19:58
  4. Semaphore
    Von _muckel_ im Forum Skripte, PHP, SQL
    Antworten: 7
    Letzter Beitrag: 29.03.10, 11:02
  5. HS 485 (HS485) - schon im Einsatz?
    Von Hinti im Forum Haustechnik
    Antworten: 5
    Letzter Beitrag: 05.11.07, 11:32