COBOL2002 ユーザーズガイド


16.4.1 実行単位の終了方法

実行単位の終了方法には,次の三つがあります。

〈この項の構成〉

(1) STOP RUN文による終了

COBOLプログラムでSTOP RUN文を実行すると,COBOLの実行環境が終了します。

プログラムが終了すると,閉じられていないファイルが閉じられるとともに,実行時に確保した仮想メモリが解放され,プロセスが終了します。

STOP RUN文による終了の例を次に示します。

図16‒1 STOP RUN文による終了の例

[図データ]

(2) GOBACK文による終了

実行単位内で最初に呼び出されたCOBOLプログラムでGOBACK文を実行すると,COBOLの実行環境が終了します。

プログラムが終了すると,閉じられていないファイルが閉じられるとともに,実行時に確保した仮想メモリが解放され,プロセスが終了します。

GOBACK文による終了の例を次に示します。

図16‒2 GOBACK文による終了の例

[図データ]

(3) CBLENDサービスルーチンによる終了

COBOL副プログラムから他言語の主プログラムへ戻る場合,閉じられていないファイルのクローズ処理や,実行時に確保した仮想メモリの解放が実行されません。これらのCOBOL資源を解放するには,CBLENDサービスルーチンを呼び出す必要があります。

CBLENDサービスルーチンは,COBOLプログラムから呼び出すのではなく,他言語のプログラムから呼び出します。CプログラムからCBLENDサービスルーチンを呼び出す形式を,次に示します。

形式
#include <windows.h>
 
extern int WINAPI CBLEND(); /* CBLENDの外部参照宣言 */
 
CBLEND();                   /* CBLENDの呼び出し     */

CBLENDサービスルーチンの詳細は,「30.4.2 CBLEND」を参照してください。

(4) 注意事項