関連項目
プログラムの特定の部分のデータだけを記録する方法
プログラムを変更したくない場合は、データ収集の制御に dbx collector サブコマンドを使用できます。 プログラムを変更してもよい場合は、収集 API 関数への呼び出しを挿入できます。
データ収集の手動制御
- プログラム中でデータ収集を開始および終了する箇所に、ブレークポイントを設定します。
- データ収集を開始したい箇所でプログラムを一時停止します。
- コレクタを有効にし、設定します。 コレクタを有効にするには collector enable コマンドを使用します。
- プログラムの実行を続けます。
- データ収集を停止したい各ブレークポイントで、collector pause コマンドを入力します。
- データ収集を再開したい各ブレークポイントで、collector resume コマンドを入力します。
- データ収集が終了したら、コレクタを無効にします。 コレクタを無効にするには、collector disable コマンドを使用します。
データ収集の自動制御
- 「出力」ウィンドウの「dbx コマンド」タブを使ってデータ収集の一時停止と再開の条件を次のように設定します。
when resume-condition { collector resume; cont; }
when pause-condition { collector pause; cont; }
- データ収集を開始したい箇所でプログラムを一時停止します。
- コレクタを有効にし、設定します。
- プログラムの実行を続けます。
- データ収集が終了したら、コレクタを無効にします。
プログラム内部からのデータ収集の制御
- プログラムに、API ルーチンへの呼び出し collector_pause() と collector_resume() を挿入します。
- API ルーチンへの呼び出しを持つ関数内にインクルードファイルを挿入します。 C または C++ プログラムでは、次の行を挿入します。
#include libcollector.h
Fortran プログラムでは、次の行を挿入します。
include "libfcollector.h"
- プログラムを再コンパイルしてリンクします。
Fortran プログラムでは、 -lfcollector オプションとのリンクが必要です。
- collect コマンド、dbx または IDE 中の dbx デバッガのどれかを使用してコレクタを有効にし、プログラムを実行します。
データ収集が有効になっていない場合、収集 API ルーチンへの呼び出しは無視されます。 API 呼び出しを挿入するだけではデータを収集できません。
データの記録が終了したら、プログラムから collector_terminate_expt() を呼び出して、実験を終了することもできます。
著作権と商標について