Wartet, bis einer der angegebenen Melder eine Nachricht erhält.

Sobald einer der Melder eine Meldung 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.


icon

Ein-/Ausgänge

  • c1dnotern.png Melder

    Melder ist ein Array aus Melderreferenzen.

    Mit der Funktion Melder anfordern kann eine Melderreferenz abgerufen werden.
  • cbool.png 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.
  • ci32.png 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.

  • cerrcodeclst.png Fehler (Eingang, kein Fehler)

    Fehler (Eingang) beschreibt Fehlerbedingungen, die vor der Ausführung des Knotens auftreten. An Fehler (Eingang) werden Standardfehlerdaten übergeben.

  • i1dnotern.png Melder (Ausgang)

    Melder (Ausgang) gibt ein Array aus den Referenzen der Melder aus, von denen Nachrichten empfangen wurden.

  • i1dstr.png 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.
  • ibool.png Timeout?

    Timeout? ist TRUE, wenn der Melder vor Ablauf der Zeitbegrenzung keine Meldung empfängt oder ein Fehler auftritt.

  • ierrcodeclst.png Fehler (Ausgang)

    Fehler (Ausgang) enthält Angaben zum Fehler. Dieser Ausgang ist ein Standardausgang zur Fehlerausgabe.

  • Verwenden Sie für einzelne Melderreferenzen die Funktion Auf Meldung warten.

    Es wird immer den Zeitstempel der zuletzt empfangenen Meldung gespeichert. Ist die Funktion in einem Blockdiagramm mehrmals enthalten, speichern alle Exemplare ihre eigenen Zeitstempel. Beim Empfang von nur einer Nachricht ist nur das erste Element im Melder-Array belegt.

    Wenn Sie diese Funktion wiederholt mit verschiedenen Meldern nutzen und es dabei zu einer Blockade kommt, da zwei Tasks dieselbe Systemressource beanspruchen, speichern Sie die Zeitstempel der einzelnen Melder mit Hilfe der Funktion Auf Meldung mit Melderhistorie warten. Mit dieser Funktion werden Blockaden vermieden.

    Wenn Vorherige ignorieren FALSE ist, muss bei jedem Exemplar der Funktion ermittelt werden, ob ein oder mehrere Melder eine Nachricht mit einem neueren Zeitstempel haben als die zuletzt gelesene. Wenn ja, werden alle Meldungen ausgegeben.

    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 Meldung nur einmal ausgibt, wiederholen andere Exemplare der Funktion bzw. der Funktion Auf Meldung warten die Ausgabe der Meldung, bis die Funktion Meldung senden durch eine andere Meldung aufgerufen wird.

    Beispiele

    Die folgenden Beispieldateien sind in LabVIEW enthalten.

    • labview\examples\Synchronization\Notifier\Wait on Multiple Notifiers.vi