CBL_EXEC_RUN_UNIT

同期実行単位または非同期実行単位を作成する。

構文:
call "CBL_EXEC_RUN_UNIT" using        command-line
                         by value     command-line-len
                         by reference run unit-id
                         by value     stack-size
                                      flags
                         returning    status-code
パラメタ:
呼び出しプロトタイプ使用時 ( 説明の読み方) PIC (32bitシステム)
command-line pic x(n). pic x(n).
command-line-len cblt-os-size. pic x(4) comp-5.
run unit-id cblt-x8-comp5. pic x(8) comp-5. Must be level 01.
stack-size cblt-os-size. pic x(4) comp-5.
flags cblt-os-flags. pic x(4) comp-5.
status-code 説明の読み方 参照
入力パラメタ:

command-line 新しい実行単位に渡されたコマンド。後ろにどのパラメタも付けられるプログラム名にする。

line-length

コマンド行の長さ

stack-size

本パラメータは無視される。

flags

新しい実行単位の作成方法を示す32ビットワード

ビット 内容
0
0

CBL_EXEC_RUN_UNITは子プロセスを作成すると直ちに呼出しプロセスに戻る。

1

CBL_EXEC_RUN_UNITは呼出しプロセスに戻るまで新しい実行単位が完了するのを待つ。

1
0

新しく作成された実行単位は、COBOLスイッチ、実行時スイッチ、環境変数、およびオープンライブラリが作成時に呼出しプロセス内に存在する場合は、すべて継承する。詳細は、下記の「注」を参照。

1

新しく作成された実行単位は、作成時に環境変数が呼出しプロセスにある場合は、すべて継承する。詳細は、下記の「注」を参照。

2
0

新しく作成された実行単位は、呼出し側の画面I/O用のコンソールを継承する。一度に本コンソールにアクセスできるのは、コルーチンの一メンバーのみ。そうしなければ予期できない結果となる。

1

新しく作成された実行単位は、割り当てられたターミナルI/O用の新しいコンソールを持つ。本コンソールは、親プロセスからは独立していて、画面I/O用に使用することができる。

3-31

予約済み。0に設定すること。

出力パラメタ:
run unit-id ビット0のフラグを設定しないと、ユニークハンドルが新しい実行単位を表示する。ビット0のフラグを設定すると、この値は変わらない。
status-code 操作状況:
0 成功
157 メモリ不足
181 パラメタ不正
200 内部論理エラー
説明:

呼出しを行う実行単位は、親プロセスとして知られている。一方、作成される実行単位は子プロセスとして知られている。子プロセスは、作成されるとその親プロセスからある属性を継承する。子プロセスが継承する属性は、呼出し時点で親プロセスに存在する属性のコピーである。呼出し後に親プロセスの属性に変更された内容は、子プロセスの属性に反映されない。同様に、子プロセスの属性の変更内容は親プロセスの属性に反映されない。

フラグのビット1は、親プロセスのどの属性を子プロセスが継承するかを制御する。

初期の実行単位を含む実行単位と初期実行単位から作成された実行単位のセットは、コルーチンとして知られている。

実行単位を使用する場合は、次の点に注意すること。

他参照:

関連項目