サンプルコードとドキュメント

Desktop Execution Trace Toolkitでメモリリーク、リファレンスの閉じ忘れを監視する

コードとドキュメント

添付

Description

概要

Desktop Execution Trace Toolkitを使用して、VI上でのメモリリーク、リファレンスの閉じ忘れなどを監視します。

 

説明

Desktop Execution Trace Toolkitは、ソフトウェアの予期せぬ動作や、不具合の原因を明らかにするために有用なツールです。

 

 

例えば予期せぬメモリリークでプログラムが終了する場合、原因となる個所を特定することは容易ではありません。

パフォーマンスおよびメモリをプロファイルウィンドウも一つの有用な手法となり得ますが、

詳細なメモリ割り当てについては確認を行うことができません。

パフォーマンスおよびメモリ.png

 

Windowsパフォーマンスモニタも一つのツールですが、特定のVIについて細かなところまでは確認が難しくなります。

そこでDesktop Execution Trace Toolkitを用いることで、メモリがどのように確保されたか、

いま確保されたサイズはどれくらいなのかをリアルタイムで確認することができます。

 

Desktop Execution Trace Toolkitでトレースできる項目は、Capture Settingsから設定可能です。

ETC.png

 

 

Memory_Resize.viのトレース結果 

 Trace_Result.png

 

Change_Array_Size.viのトレース結果


Array_Size_Change.png

 

 

<< リファレンスの閉じ忘れもしっかり監視 >>

リファレンスの閉じ忘れについても、本ツールを用いることで確認が可能です。

下記のような、わざとリファレンスを閉じ忘れているVIを実行します。

Ref_閉じ忘れ.png

 

リファレンスの閉じ忘れ.png

 

ファイルIOとVIリファレンスの閉じ忘れを検知できます。

  

また、Desktop Execution Trace Toolkitは、EXEのリモートトレースも可能です。

詳細につきましてはこちらの資料をご覧ください。

Enabling Desktop Execution Trace Toolkit to Remotely Debug a LabVIEW Executable

VIサーバーの起動ならびに、EXEのdebuggingを有効にする必要があります。

 

ハードウェア/ソフトウェアの要件

コードの実装/実行手順

 

NIコミュニティのサンプルコード交換のサンプルコードは、MIT Licenseによりライセンス供与されています。