Hallo Zusammen,
schon mal Danke für eure Hilfe
@Chris:
Zitat:Ich denke das Problem ist, dass die Notifier-Referenz nach dem Beenden des Producers (Event-Struktur) direkt geschlossen wird.
Hat der Consumer eine Verzögerung implementiert, so versucht diese Schleife auf eine "ungültige" Notifier-Referenz zuzugreifen.
Schliess den Notifier erst, wenn beide Schleifen beendet wurden.
Das könnte schon mal einen Teil meiner Probleme behoben haben
Danke
@Gerd
Zitat:Kleines Dummy-Programm (Programm_beenden_cluster.vi) geschrieben, was aus meiner Sicht funktioniert und ich glaube auch verstanden zu haben.
Wieso verwendest du "Get Notifier Status" anstatt des sinnvolleren "Wait on Notification"?
Wenn ich in meinem Dummy den "Get Notifier Status" gegen den "Wait on Notification" ersetzte, dann hält er meine Consumer-Schleife an und wartet bis sich der Status ändert. Da er in der Schleife kontinuierlich Messen soll, würde das so nicht passen. Das war der Grund für mich den "Get Notifier Status" zu verwenden.
"... When the notifier receives a message, this function continues to execute. ..."
Zitat:Wieso soll deine Consumer-Loop ungebremst laufen?
Wieso ist die Notifier-Referenz in der Producer-Loop nicht durchverdrahtet?
Unachtsamkeit beim Dummyprojekt
Zitat:Hast du dieses Mini-VI wirklich "verstanden"? Funktioniert das VI wirklich?
Das ist jetzt eine Fangfrage von dir.
Vor deiner Antwort hätte ich mit ja geantwortet. Danach ... bin noch unsicher.
Nach meinem Verständnis was ich testen konnte hat es soweit funktioniert. Der Einwand von Chris war gut. Da bin ich drübergestolpert, da die Schleife ungebremst gelaufen ist.
Zitat:Könnte von euch bitte jemand mal einen Blick drauf werfen?
Boah, ist das BD groß!
Wo soll man denn da den Überblick behalten und irgendetwas finden?
Ich hab leider noch kein wirklich großes Projekt gesehen. Meistens waren das Tutorials bzw. Beispiele welche auch nicht groß waren.
Ist es dann sinvoll mehr in subVIs zu packen? Auch dann wenn es quasi nur 1x Verwendung findet?
Zitat:Auch hier halte ich es für problematisch, überall mit "Get Notifier Status" zu arbeiten.
Wie oben angemerkt, weiß ich nicht recht wie ich den "Wait on Notification" einsetzen soll. Gibt es dann generell bessere Wege für meine Fragestellung als mit der Notification? Queue Operations hab ich gelesen, das die mehr dafür gedacht sind, wenn ich größere Daten zwischen Producer und Consumer austauschen möchte (wie z.B. Messdaten) und es nicht wichtig ist, das man sicher den letzten Wert erwischt.
Zitat:Und warum muss man den Status mehrfach in einer Schleife abfragen?
War für mich so einfacher ersichtlich wo das Signal herkommt
Was mich wieder zu dem Problem des großen BD kommen lässst
Ist jetzt auf eine Abfrage reduziert.
Zitat:Wäre für weitere Anmerkungen auch offen, da ich noch nicht lange mit LabView arbeite.
Erste Anmerkung: das schreibt man "LabVIEW"! Big Grin
Werde ich beachten.
Zitat:Zweite Anmerkung: Profil_ergaenzen
Sollte jetzt passen
Zitat:Ansonsten: zu viele lokale Variablen/"Value"-PropertyNodes für meinen Geschmack…
Gibt es damit Probleme bzw. was wären da alternaiven?
Danke für eure Unterstützung
Viele Grüße aus Weihenstephan
christoph