CBL_DEBUG_START

COBOL プログラムで高度なリモート デバッグまたはクロスセッション デバッグを実行できるようにする。

構文:
CALL "CBL_DEBUG_START" using  by value      flags
                                            timeout
                              by reference  identifier
                              returning     status-code
パラメーター:
呼び出しプロトタイプ使用時 (説明の読み方) PIC (32 ビット システム)
flags cblt-os-flags pic x(4) comp-5

または

pic x(8) comp-5 (64 ビットのネイティブ プログラムのみ)

timeout cblt-os-ssize pic s9(9) comp-5

または

pic s9(18) comp-5 (64 ビットのネイティブ プログラムのみ)

identifier pic x(n)
status-code 説明の読み方 参照
入力パラメーター:
flags アニメーションの開始方法を制御する。以下のビットを設定できる。
ビット 内容
0 所定の識別子を待機するクロスセッションまたはリモートの Animator プロセスがない場合に、指定されたタイムアウト期間が経過した場合のアクション。
0

何らかのプロセスへのアタッチを待機するクロスセッションまたはリモートの Animator プロセスを照合する。そのような待機プロセスがない場合は、Animator を使用してローカル デバッグを開始する (UNIX のみ)。またはジャストインタイム デバッグを開始する。

1

エラー ステータスを返す。

1 デバッグを開始するタイミング。
0

直ちにデバッグを開始する。

1

デバッグ可能な次のエントリ ポイントに入った時点でデバッグを開始する。これは、呼び出された次のアニメート可能な COBOL プログラムの最初の文になるか、ENTRY 文で呼び出された次のアニメート可能な COBOL コードの最初の文になる。

timeout クロスセッションまたはリモートの Animator プロセスの開始を待機するまでのタイムアウト期間 (ミリ秒単位)。0 を指定すると待機せず、-1 を指定すると無期限に待機する。
identifier アタッチ先の待機 Animator プロセスを識別する一意の文字列。文字列の末尾にはスペースまたは NULL 値を指定する必要がある。
説明:

この呼び出しを使用して、リモート アニメーションまたはクロスセッション アニメーションを起動する。CBL_DEBUG_START の呼び出し時にプログラムがデバッグ中でない場合、identifier 文字列を使用して、アタッチ先の Animator プロセスを判断する。

高度なリモート デバッグを使用する場合は、リモート デバッグを起動する COBOL 開発システムのコマンド ラインに渡された一意の文字列と同じ値を identifier 文字列に設定する。

クロスセッション デバッグを使用する場合は、他の Animator セッションの COBANIMSRV 環境変数と同じ値を identifier 文字列に設定する。

identifier 文字列を空白にした場合、以下のように通常のクロスセッション アニメーション ルールが適用される。

対応する待機中の Animator プロセスがある場合、プログラムは停止しデバッグが開始される。flags にビット 1 が設定されている場合、プログラムは直ちに停止する。1 が設定されていない場合は、デバッグ可能な次のエントリ ポイントに入った時点で実行を停止する。

対応する待機中の Animator プロセスがない場合、timeout で指定された期間中 (ミリ秒単位)、または Animator プロセスが開始するまで、プログラムは一時停止する。timeout が 0 の場合、呼び出しは一時停止せず直ちに返す。timeout が -1 の場合、プログラムはタイムアウトせず、Animator がプロセスを開始するまで一時停止する。

タイムアウト期間を過ぎてもアタッチ先の対応する Animator プロセスがない場合、flags のビット 0 の設定に応じてアクションが異なる。0 が設定されている場合、呼び出しはエラー ステータスを返して実行を継続する。0 が設定されていない場合は、ローカルの Animator プロセスが開始する。

CBL_DEBUG_START の呼び出し時にプログラムがデバッグ中であった場合、中断キーを押した場合と同様に Animator 内でデバッグが停止する。

呼び出しが成功した場合、ルーチンは 0 の値を戻し、Animator の呼び出しに失敗した場合は 0 以外の値を戻す。

他参照:

関連項目