マルチスレッド・プログラムは、GOBACK または EXIT PROGRAM を使用して終了させることができます。
プログラムの呼び出し側に戻るには、GOBACK を 使用します。あるスレッド内の最初のプログラムから GOBACK を使用するとき、そのスレッドは終了します。
メインプログラムからの場合を除き、GOBACK と同様に、EXIT PROGRAM を使用します。メインプログラムでは EXIT PROGRAM は無効です。
COBOL 環境が事前に初期設定されていて、 COBOL ランタイムが実行単位内にアクティブな COBOL プログラムが他にあるかどうかを判断できる場合は、当該スレッドの最初のプログラムから出される GOBACK で、実行単位を終了する (オープンしている COBOL ファイルをすべてクローズするなど) ための COBOL プロセスが実行されます。実行単位内で呼び出されるすべての COBOL プログラムが、GOBACK または EXIT PROGRAM によって呼び出し元へ戻った場合は、この判断を行うことができます。しかし、この判断は、以下のような特定の条件下では行うことができません。
スレッド化環境で STOP RUN を効率的に実行する COBOL 関数はありません。この動作が必要な場合は、COBOL プログラムから C の exit 関数を呼び出し、ランタイム終了出口の後に _iwzCOBOLTerm を使用することを考慮してください。
関連タスク
メインプログラムまたはサブプログラムの終了と再入