적어도 하나 이상의 지정된 알림자가 메시지를 받을 때까지 기다립니다.

알림자 중 하나가 메시지를 받으면, 이 함수는 실행을 계속합니다. [알림 보내기] 함수를 사용하여 메시지를 보냅니다. 다른 함수가 알림자 참조를 닫거나 해서 알림자 참조가 유효하지 않게 되는 경우, 이 함수는 기다림을 멈추고 에러 코드 1122를 반환합니다. 알림자가 메시지를 포함하지 않는 경우, 이 함수는 알림자가 메시지를 받을때까지 기다립니다.


icon

입력/출력

  • c1dnotern.png 알림자

    알림자는 알림자 참조의 배열입니다.

    [알림자 얻기] 함수를 사용하여 알림자 참조를 얻습니다.
  • cbool.png 이전 무시(거짓)

    이전 무시는 LabVIEW가 이 함수를 호출하기 전에 알림자에게 보낸 메세지를 무시할지 여부를 나타냅니다.

    참이고 이 함수를 호출하기 이전에 알림자에 메시지가 포함되어 있는 경우, 이 함수는 알림자가 다른 메시지를 받을 때까지 기다립니다. 거짓(기본)이고 이 함수를 호출하기 이전에 알림자에 메시지를 포함되어 있는 경우, 함수는 실행을 계속합니다.
  • ci32.png 타임아웃(ms) (-1)

    타임아웃(ms)은 알림자가 메시지를 받을 때까지 함수가 기다리는 시간을 밀리초 단위로 지정합니다.

    기본은 -1이며, 결코 타임아웃되지 않음을 나타냅니다.

    함수가 타임아웃(ms)만큼 기다리고 알림자가 메시지를 받지 않은 경우, 타임아웃?은 참입니다.

  • cerrcodeclst.png 에러 입력(에러 없음)

    에러 입력은 이 노드의 실행 전에 발생한 에러 조건을 설명합니다. 이 입력은 표준 에러 입력 기능을 제공합니다.

  • i1dnotern.png 알림자 출력

    알림자 출력은 어떠한 메시지를 받았는지 나타내는 알림자 참조의 배열을 반환합니다.

  • i1dstr.png 알림

    알림은 알림자가 받은 마지막 메시지의 배열입니다.

    이 데이터 타입은 알림자의 서브타입과 일치하도록 변경됩니다. 단 서브타입은 배열이 아닌 경우만 해당합니다. 서브타입이 배열인 경우, 데이터 타입은 배열의 클러스터가 됩니다.
  • ibool.png 타임아웃?

    타임아웃?은 함수가 타임아웃되기 이전에 알림자가 메시지를 받지 않거나 에러가 발생하는 경우 참입니다.

  • ierrcodeclst.png 에러 출력

    에러 출력은 에러 정보를 포함합니다. 이 출력은 표준 에러 출력 기능을 제공합니다.

  • 하나의 알림자 참조에 [알림 기다림] 함수를 사용합니다.

    이 함수의 각 고유한 인스턴스는 받은 마지막 메시지의 타임스탬프를 기억합니다. 이 함수가 하나의 메시지만을 받는 경우, 함수는 타임스탬프가 어떤 메시지를 참조하는지 기억하지 않고 알림자 배열의 첫번째 원소만 채워집니다.

    이 함수를 여러 알림자와 함께 반복적으로 사용할 때 교착 상태가 발생하는 경우, [알림자 히스토리가 있는 알림 기다림] 함수를 사용하여 각 개별 알림자에 타임스탬프를 저장합니다. 이 함수는 교착 상태를 방지합니다.

    이전 무시가 거짓인 경우, [여러 알림 기다림] 함수의 각 인스턴스는 하나 또는 그 이상의 알림자가 이 함수가 가장 최근에 받은 타임스탬프보다 새로운 메시지를 가지는지의 여부를 결정합니다. 하나 또는 그 이상의 알림자가 새 메시지를 가지는 경우, 모든 메시지가 반환됩니다.

    이전 무시가 참인 경우, 현재 알림자의 메시지가 이전에 보지 못했던 것인 경우에도 [여러 알림 기다림] 함수는 항상 새 메시지를 기다립니다.

    이 함수는 알림자에서 메시지를 삭제하지 않습니다. 함수의 특정 인스턴스가 메시지를 한번만 반환하더라도 함수의 다른 인스턴스 또는 [알림 기다림] 함수는 새 메시지와 함께 [알림 보내기] 함수를 호출할 때까지 메시지를 반복합니다.

    예제

    LabVIEW 포함되는 다음 예제 파일을 참조하십시오.

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