VIを動的にロードして呼び出す



LabVIEW 2018ヘルプ


発行年月: 2018年3月
製品番号: 371361R-0112
製品情報を参照

ダウンロード (Windowsのみ)


LabVIEW 2015ヘルプ
LabVIEW 2016ヘルプ
LabVIEW 2017ヘルプ
LabVIEW 2018ヘルプ
LabVIEW 2019ヘルプ

静的にリンクされたサブVIを使用せずに、動的にVIを呼び出すことができます。静的にリンクされたサブVIは発呼者VIのブロックダイアグラム上に直接配置するものです。このサブVIは発呼者VIと同時にロードされます。

静的にリンクされたサブVIとは異なり、動的にロードされたVIは、発呼者VIが「VIリファレンスを開く」でVIをロードするまで、ロードされません。VIは発呼者VIで必要になるまでロードされないので、発呼者VIが大きい場合、VIを動的にロードすることによってロード時の時間とメモリを節約でき、さらに操作が終了するとVIをメモリから解放できます。また、VI呼び出し構成ダイアログボックスを使用して、サブVIをいつロードするか構成することもできます。

リファレンス呼び出しノードとタイプ指定VI Refnum

リファレンス呼び出しノードまたは非同期呼び出しを開始ノードを使用してVIを動的に呼び出します。どちらのノードも、リファレンス入力が指定したサブVIの呼び出しを開始します。しかし、非同期呼び出しを開始ノードは、呼び出しVI内でデータフローが継続する間も、非同期でサブVIを呼び出します。

リファレンス呼び出しノードにはタイプ指定VI Refnumが必要です。タイプ指定されたVIリファレンスは、呼び出し中のVIとそのコネクタペーンの両方を識別します。タイプ指定VI Refnumは、VIへの永久的な関連を確立したり、VIの名前や位置などの他のVI情報を含むわけではありません。リファレンス呼び出しノードの入力と出力は、他のVIに配線する場合と同じように配線できます。

以下のブロックダイアグラムは、リファレンス呼び出しノードを使用して「周波数応答」VIを動的に呼び出す方法を示しています。リファレンス呼び出しノードには「VIリファレンスを開く」関数と「リファレンスを閉じる」関数を使用する必要があります。これは、プロパティノードインボークノードを使用する場合と似ています。

タイプ指定Refnumとして指定されたVIは、コネクタペーン情報のみを提供します。したがって、RefnumとVIの間には固定的な関連付けが確立されません。特に、VIコネクタペーンの選択と、選択したVIに対するRefnumの取得を混同しないようにしてください。「VIリファレンスを開く」関数のVIパス入力を使用して、特定のVIを指定します。



この記事は役に立ちましたか。

役に立たなかった