Wenn dies dein erster Besuch hier ist, lies bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Du musst dich vermutlich registrieren, bevor du Beiträge verfassen kannst. Klicke oben auf 'Registrieren', um den Registrierungsprozess zu starten. Du kannst auch jetzt schon Beiträge lesen. Suche dir einfach das Forum aus, das dich am meisten interessiert.
my $status = 0;
(knx_read($_, 0, 1) == 1) and $status = 1 and last foreach (@Fenster_GA);
knx_write($Sammel_GA, $status, 1);
return "Sent Value $status";
Kein Support per PN: Fragen bzw. Fehlermeldungen bitte im Forum posten.
Kann man beim Abfragen aller elemente eine Art Zeit einbauen, die die Sati eine 0 haben müssen bevor weiter gearbeiet wird?
also knx_read auf alle elemente, wenn sich nach 3min nix an dem status 0 ändert, dann knx_write(blablabla)?
hier sind gerade soviel Perl experten am diskutieren, wenn sowas geht find ich evtl hier die antwort...
Natürlich darfst Du das Script nicht anhalten, etwa mit
sleep 3;
Damit würdest Du das ganze Plugin System korrumpieren, und der Thread bekäme einen Timeout. Aber es geht über den _cycle Wert. Den kannst Du z.B. auf 3 Sekunden setzen, dann wird das Script nach drei Sekunden wieder aufgerufen.
Dazu musst Du natürlich den Status Deines Plugins in%plugin_infoabspeichern, und beim nächsten Aufruf, also nachdem die drei Sekunden abgelaufen sind,erst mal abfragen, denn das Plugin selbst ist ja stateless.
Außerdem musst Du den Status dann wieder zurücksetzen, und auch Deinen _cycle Wert wieder neu justieren. Und schließlich musst Du eine Neustart-Erkennung einbauen. Denn wenn Dein Script mal geändert und dann neu gestartet wird, sind die alten Werte aus %plugin_info wahrscheinlich nicht mehr relevant.
Aber das wäre sicher ein neues Thema. Mach für Dein Problem doch einfach eins auf.
Kein Support per PN: Fragen bzw. Fehlermeldungen bitte im Forum posten.
Nee, das geht echt garnicht (obwohl es gehen sollte, wäre nominell ein Bug, aber da wehre ich mich!) Zumindest im Quellcode darf man sowas krankes wie Umlaute bitte noch verbieten, ASCII 7bit ist super, funktioniert..
Damit würdest Du das ganze Plugin System korrumpieren, und der Thread bekäme einen Timeout.
Was übrigens leider daran liegt (ich muss das ab&an wiederholen) das Perl & Threads ein insgesamt ziemlich komplett kaputtes Thema sind (Perl verwechselt leider Threads mit einem Prozess pro "Thread"..) Das erfährt man dummerweise erst hinterher, weil das das alles in der Doku anders steht als es real ist..
War anders geplant.. Aber irgendwann soll das C++-Buch dann ja auch was helfen
Wir verarbeiten personenbezogene Daten über die Nutzer unserer Website mithilfe von Cookies und anderen Technologien, um unsere Dienste bereitzustellen. Weitere Informationen findest Du in unserer Datenschutzerklärung.
Indem Du unten auf "ICH stimme zu" klickst, stimmst Du unserer Datenschutzerklärung und unseren persönlichen Datenverarbeitungs- und Cookie-Praktiken zu, wie darin beschrieben. Du erkennst außerdem an, dass dieses Forum möglicherweise außerhalb Deines Landes gehostet wird und bist damit einverstanden, dass Deine Daten in dem Land, in dem dieses Forum gehostet wird, gesammelt, gespeichert und verarbeitet werden.
Kommentar