ノーティファイアがメッセージを受信するまで待機します。それぞれ異なるノーティファイアを持つこの関数を使用する際、各ノーティファイアの最新のメッセージとタイムスタンプをトラッキングします。


icon

入力/出力

  • cnotern.png ノーティファイア

    ノーティファイアは、ノーティファイアのリファレンスです。

    ノーティファイア取得関数を使用して、ノーティファイアのリファレンスを取得します。
  • cbool.png 前を無視 (F)

    前を無視は、この関数の呼び出し前にノーティファイアに送信されるメッセージを無視するかどうかを示します。

    設定がTRUEの場合、この関数は、呼び出される前にノーティファイアにメッセージが含まれていると、ノーティファイアが別のメッセージを受け取るまで待機します。設定がFALSE (デフォルト) の場合、この関数は、呼び出される前にノーティファイアにメッセージが含まれていると実行を継続します。
  • ci32.png タイムアウト (ms) (-1)

    タイムアウト (ms) は、ノーティファイアがメッセージを受信するまでの関数の待機時間をミリ秒で指定します。

    デフォルトは-1で、「タイムアウトしない」です。

    関数がタイムアウト (ms) を待機し、ノーティファイアがメッセージを受信しない場合、タイムアウト?はTRUEとなります。

  • cerrcodeclst.png エラー入力 (エラーなし)

    エラー入力は、このノードを実行する前に発生したエラーの状態を示します。この入力は、標準エラー入力として機能します。

  • inotern.png ノーティファイア出力

    ノーティファイア出力は、ノーティファイアを編集せずに返します。

  • istr.png ノーティフィケーション

    ノーティフィケーションは、ノーティファイアに最後に送信されたメッセージです。

    このデータタイプはノーティファイアのサブタイプと一致するように変更されます。
  • ibool.png タイムアウト?

    タイムアウト?は、関数がタイムアウトになる前にノーティファイアがメッセージを受信しない場合、またはエラーが発生した場合にTRUEとなります。

  • ierrcodeclst.png エラー出力

    エラー出力には、エラー情報が含まれます。この出力は、標準エラー出力として機能します。

  • この関数の各固有のインスタンスは、各ノーティファイアで受け取る最後に受信したメッセージのタイムスタンプを記録します。

    ノーティファイア履歴を管理すると、異なるノーティファイアでそれぞれこの関数を使用する際に、メッセージが失われる現象やその他の問題を回避できます。ノーティファイアがメッセージを受信すると、この関数は実行を継続します。「ノーティフィケーション送信」関数を使用して、メッセージを送信します。他の関数がノーティファイア参照を閉じたときにノーティファイア参照が無効になった場合、その関数は待機を停止し、エラーコード1122を返します。このノーティファイアにメッセージがない場合、この関数は配列内のノーティファイアがメッセージを受信するまで待機します。

    また、ノーティファイア履歴を管理すると、この関数の実行速度は「ノーティフィケーション待機」関数よりも遅くなります。「ノーティフィケーション待機」関数はノーティファイア履歴を管理しないので、異なるノーティファイアで繰り返しこの関数を使用するとデッドロックになる可能性があります。

    ノーティファイアリファレンスの配列を処理するには、「複数からのノーティフィケーション待機 (ノーティファイア履歴付き)」関数を使用します。

    前を無視がFALSEの場合、「ノーティフィケーション待機(ノーティファイア履歴付き)」関数の各インスタンスはノーティフィケーションが受信されていない場合に待機します。また、この関数は、現在のメッセージのタイムスタンプが、最後に実行された関数のインスタンスと同じであるかどうかも待機します。メッセージが新規の場合、関数はメッセージを返します。

    前を無視がTRUEの場合、「ノーティフィケーション待機 (ノーティファイア履歴付き)」関数は、現在ノーティファイアにあるメッセージが過去に一度も認識されていなくても、常に新規メッセージを待機します。

    この関数はノーティファイアからメッセージを削除しません。関数の1つのインスタンスは1回のみメッセージを返しますが、この関数の別のインスタンスまたは「複数からのノーティフィケーション待機」関数のインスタンスは、新規のメッセージと「ノーティフィケーション送信」関数を呼び出すまで同じメッセージを返し続けます。