「ループトンネルによってメモリがいっぱいになりましたので、VIが停止しました」という趣旨のエラーが発生します。 これはどうしてでしょうか。



使用ソフトウェア:
使用ソフトウェア・バージョン: N/A
使用ソフトウェア・バージョンに特化: N/A
二次のソフトウェア: N/A

問題: ループトンネルで、配列指標付けを使用した形でFORループを使用しているのですが、、時折メモリがいっぱいになったという趣旨のエラーが発生します。これはどうしてでしょうか。

解決策: LabVIEWがループトンネルを含むViに十分なメモリを分配することができない場合、このエラーが生じます。

配列指標付けを使用した場合、ループトンネルにはデータが蓄積され、ループ終了時までメモリ内にデータが一時的に保存されます。
このループトンネルに、多くの要素を溜め込んでしまうと、この様なエラーが発生します。

ここで、ご注意いただきたいのはループの実行回数の設定が演算の結果等に依存している場合です。
たとえば、下に添付してありますブロックダイアグラムのスクリーンショットのように、割り算で割る数が0になる可能性があるとき、有理数を0で割りますと返される数値はinf(無限大)となり、ループは停止しません。
もしこの様なループに、指標付けのあるループトンネルがありますと、確実に上記のようなエラーが出ます。

**サンプルVIを添付しない理由**
本件でのサンプルは、実行しますと多くのメモリを確保し、OSの動作自体を不安定にすることがあります。
お客様ご自身でお試しになる際は、この旨ご注意の上、お試しください。
*********************************

関連リンク:

添付:


BAD Loop.gif - BAD Loop.gif



報告日時: 02/27/2004
最終更新日: 09/27/2004
ドキュメントID: 36QD14V3