LabVIEWForum.de
Ereignisstrukturen verschachteln - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Ereignisstrukturen verschachteln (/Thread-Ereignisstrukturen-verschachteln)

Seiten: 1 2


Ereignisstrukturen verschachteln - haiopei - 25.08.2010 12:36

Hallo zusammen,

ich hänge gerade an einem scheinbar einfachen Problem. Ich habe eine Ereignisstruktur, die verschiedene Fälle auswählt. In einem Fall möchte ich wiederum eine Ereignisstruktur einbinden. Leider reagiert diese dann auf keine Eingabe mehr.

Im Anhang habe ich ein (sehr vereinfachtes) Beispiel zu diesem Problem (LV 8.6).

Kann man Ereignisstrukturen prinzipiell nicht verschachteln? Oder gibt es da einen Trick?

Viele Grüße
Thomas


Ereignisstrukturen verschachteln - Matze - 25.08.2010 12:44

Hallo,

mehrere Ereignisstrukturen sollte man wenn, dann nur verwenden, sofern diese nicht gleichzeitig laufen. Was du da versuchst, ist sicher schlecht und so etwas habe ich auch noch nie gesehen. Code, der länger in der Ausführung braucht, sollte auch nicht in eine Ereignisstruktur.
Da bieten sich Melder, Queues o.ä. eher an. Die Ereignisstruktur setzt diese und außerhalb kannst du darauf reagieren und zeitintensive Dinge durchführen.

Was möchtest du denn erreichen?
Das geht garantiert schöner und vermutlich auch mit einer einzigen Ereignisstruktur und ohne Melder/Queues.
Vielleicht kannst du das mit einem Schieberegister lösen, aber ich weiß noch nicht genau, was du erreichen möchtest.


Ereignisstrukturen verschachteln - jg - 25.08.2010 12:47

' schrieb:Kann man Ereignisstrukturen prinzipiell nicht verschachteln?
Man kann es prinzipiell schon, zu empfehlen ist es auf gar keinen Fall. Lies dir einmal die Hinweise zur Verwendung der Ereignisstruktur in der LabVIEW-Hilfe durch. U.a. steht da sinngemäß: nicht mehr als eine Ereignis-Struktur pro Schleife. In der Programmierpraxis kann man das verschärfen zu "Nicht mehr als eine Ereignisstruktur pro VI". Alles andere führt in der Regel immer zu Problemen und Ärger, s. deine Frage...

Gruß, Jens


Ereignisstrukturen verschachteln - TSC - 25.08.2010 12:49

Insbesondere sollten die verschachtelten Strukturen auf keinen Fall auf das gleiche Event reagieren. Das kann nur zu Chaos führen!


Ereignisstrukturen verschachteln - Matze - 25.08.2010 12:54

Ich habe dein VI etwas angepasst. Meinst du vielleicht sowas?

[attachment=28993]Lv86_img

Edit: Noch auf die Schnelle bissl was verändert, was das Testen erleichtert:

[attachment=28992]Lv86_img


Ereignisstrukturen verschachteln - Lucki - 25.08.2010 13:10

Die genannte Regel a) "nicht mehrere Ereignisstrukturen (und schon gar nicht ineinander verschachtelte)" ist eine Empfehlung, und die ist es hier vermutlich nicht, die Dir das Genick bricht. Wichtiger noch sind 2 weitere Regeln:
b) nicht mehrere Mal dasselbe Ereignis in verschiedenen Ereignisstrukturen behandeln
c) in einem Ereigniscase nichts machen, was ewig + 1 Tag dauert.


Ereignisstrukturen verschachteln - haiopei - 25.08.2010 13:21

Hallo zusammen,

danke für die schnellen Antoworten. Ich habe zwar keine doppelten Fälle, aber ich werde es jetzt anders lösen...

Danke für die Hilfe
Thomas


Ereignisstrukturen verschachteln - TSC - 25.08.2010 13:28

' schrieb:..
Ich habe zwar keine doppelten Fälle
..

"Stopp": Wertänderung ist in beiden Strukturen vorhanden!


Ereignisstrukturen verschachteln - haiopei - 25.08.2010 13:32

Das war nur für das einfache Beispiel. Im anderen Programm war nichts doppelt dabei.


Ereignisstrukturen verschachteln - Lucki - 25.08.2010 15:06

' schrieb:Das war nur für das einfache Beispiel. Im anderen Programm war nichts doppelt dabei.
@Tschac: ja warum hast Du auch nur Deine Glaskugel nicht benutzt? Dann hättest Du das vorher schon gewußt und den Beitrag vor dem Posten als Überflüssig erkannt.Mellow