Auf Meldung von mehreren mit Melderhistorie warten - Funktion
- Aktualisiert2025-07-30
- 4 Minute(n) Lesezeit
Wartet, bis ein Melder in einem Array eine Nachricht erhält. Mit dieser Funktion wird zu jedem Melder innerhalb eines Arrays die neueste Nachricht einschließlich ihrer Uhrzeit aufgezeichnet.

Ein-/Ausgänge
Melder
—
Melder ist ein Array aus Melderreferenzen. Mit der Funktion Melder anfordern kann eine Melderreferenz abgerufen werden.
Vorherige ignorieren (F)
—
Vorherige ignorieren gibt an, ob Meldungen, die vor Aufruf dieser Funktion an den Melder gesendet wurden, ignoriert werden sollen. Bei TRUE wartet das VI in diesem Fall auf das Eintreffen einer neuen Meldung. Bei FALSE (Standardeinstellung) wird Funktion fortgeführt.
Timeout in ms (-1)
—
Timeout (ms) gibt an, wie viele Millisekunden die Funktion darauf warten soll, dass der Melder eine Meldung empfängt. Der Standardwert lautet –1. Das heißt, es liegt keine Zeitbegrenzung vor. Wenn die Funktion bis zum Ablauf von Timeout (ms) keine Meldung empfangen hat, wechselt Timeout? auf TRUE.
Fehler (Eingang, kein Fehler)
—
Fehler (Eingang) beschreibt Fehlerbedingungen, die vor der Ausführung des Knotens auftreten. An Fehler (Eingang) werden Standardfehlerdaten übergeben.
Melder (Ausgang)
—
Melder (Ausgang) gibt ein Array aus den Referenzen der Melder aus, von denen Nachrichten empfangen wurden.
Meldungen
—
Meldungen ist ein Array aus den letzten von den Meldern empfangenen Nachrichten. Dieser Datentyp passt sich an den Untertyp des Melders an, sofern der Untertyp kein Array ist. In diesem Fall wird der Datentyp ein Cluster aus Arrays.
Timeout?
—
Timeout? ist TRUE, wenn der Melder vor Ablauf der Zeitbegrenzung keine Meldung empfängt oder ein Fehler auftritt.
Fehler (Ausgang)
—
Fehler (Ausgang) enthält Angaben zum Fehler. Dieser Ausgang ist ein Standardausgang zur Fehlerausgabe. |
Jedes Exemplar dieser Funktion speichert die Uhrzeit der neuesten Nachricht jedes Melders.
Durch das Speichern des Nachrichtenverlaufs werden allgemeine Probleme bei der Arbeit mit mehreren Meldern verhindert, beispielsweise Verlust von Nachrichten. Wenn einer der Melder im Array eine Nachricht empfängt, wird die Funktion weitergeführt. Meldungen werden mit der Funktion Meldung senden gesendet. Wenn eine Melder-Referenz ungültig wird (zum Beispiel, wenn sie von einer anderen Funktion geschlossen wird), beendet diese Funktion den Wartevorgang und gibt den Fehlercode 1122 aus. Enthält der Melder keine Nachricht, wird so lange gewartet, bis ein Melder im Array eine Nachricht empfängt.
Da der gesamte Nachrichtenverlauf gespeichert wird, läuft diese Funktion langsamer als die Funktion Auf Meldung von mehreren warten, die den Nachrichtenverlauf nicht speichert. Wenn Sie die Funktion "Auf Meldung von mehreren warten" wiederholt mit unterschiedlichen Meldern verwenden, kann es daher zu einer Blockade kommen.
Wenn Sie mit nur einer Melder-Referenz arbeiten, verwenden Sie die Funktion Auf Meldung von mehreren mit Melderhistorie warten.
Wenn Vorherige ignorieren FALSE ist, wartet jedes Exemplar der Funktion "Auf Meldung von mehreren mit Melderhistorie warten", wenn bisher keine Nachricht empfangen wurde. Sobald mindestens ein Melder eine Nachricht empfängt, deren Uhrzeit nach der zuletzt vermerkten liegt, gibt die Funktion alle Nachrichten aus. Anderenfalls wartet die Funktion weiter.
Wenn Vorherige ignorieren TRUE ist, wird immer auf eine neue Meldung gewartet, auch dann, wenn der Funktion die aktuelle Nachricht noch unbekannt ist.
Es werden keine Meldungen aus dem Melder entfernt. Obwohl ein bestimmtes Exemplar der Funktion eine Nachricht nur einmal ausgibt, wiederholen andere Exemplare der Funktion bzw. der Funktion Auf Meldung warten die Ausgabe der Nachricht, bis die Funktion Meldung senden durch eine andere Nachricht aufgerufen wird.
Melder
—
Vorherige ignorieren (F)
—
Timeout in ms (-1)
—
Fehler (Eingang, kein Fehler)
—
Melder (Ausgang)
—
Meldungen
—
Timeout?
—
Fehler (Ausgang)
—