Erlangt Zugriff auf ein Semaphor.

Verwenden Sie dieses VI in Verbindung mit den anderen Semaphore-VIs , um eine Semaphore in LabVIEW zu implementieren .


icon

Ein-/Ausgänge

  • cdlrn.png Semaphor

    Semaphor ist eine Referenz auf ein Semaphor.

  • ci32.png Timeout in ms (-1)

    ms Timeout (-1) gibt an, wie viele Millisekunden die Funktion warten soll, bis das Semaphor verfügbar wird.

    Die Standardeinstellung lautet -1 (keine Zeitbegrenzung).

  • cerrcodeclst.png Fehler (Eingang, kein Fehler)

    Fehler (Eingang) beschreibt Fehlerbedingungen, die vor der Ausführung des Knotens auftreten. Dieser Anschluss funktioniert wie ein normaler Fehler (Eingang), jedoch mit folgender Einschränkung.

    Der Knoten wird normal ausgeführt, <em/>selbst wenn zuvor ein Fehler auftrat.

  • idlrn.png Semaphor (Ausgang)

    Semaphor (Ausgang) ist mit Semaphor identisch.

  • ibool.png Timeout

    Zeitbegrenzung überschritten ist TRUE, wenn vor Ablauf der Zeitbegrenzung kein Semaphor verfügbar wurde oder ein Fehler aufgetreten ist.

  • ierrcodeclst.png Fehler (Ausgang)

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

  • Wenn das Semaphor bereits von der maximalen Anzahl der Tasks belegt wurde, wartet das VI die in ms Timeout angegebenen Millisekunden vor Überschreitung der Zeitbegrenzung ab. Wenn das Semaphor während der Wartezeit verfügbar wird, ist Timeout FALSE. Ist das Semaphor ungültig oder nicht verfügbar, ist Timeout TRUE. Die Anzahl der Aufrufe eines Semaphors erhöht sich bei jeder Ausführung der Funktion, auch wenn der Task das Semaphor vorher schon einmal belegt hat.

    Beispiele

    Die folgenden Beispieldateien sind in LabVIEW enthalten.

    • labview\examples\Synchronization\Semaphore\Simple Semaphore.vi