COBOL2002 使用の手引 手引編


26.1 マルチスレッド対応COBOLプログラムの概要

マルチスレッド対応COBOLプログラムとは,マルチスレッド環境下で,複数スレッドで同時に実行できるCOBOLプログラムのことです。

ただし,マルチスレッド対応COBOLプログラム機能は,マルチスレッド環境自体を作成するものではありません。

マルチスレッド対応COBOLプログラムには,制限や注意点があります。

〈この節の構成〉

(1) スレッドの制御

スレッドの起動やスレッド間の同期制御など,スレッド制御に関する操作は,COBOLプログラムで実行できません。

(2) 実行単位

マルチスレッド対応COBOLプログラムの実行単位は,スレッドになります。各スレッドはそれぞれにCOBOL実行環境を持ち,独立して動作しています。

(3) データの共用

COBOLデータ項目の領域は,スレッドごとに割り当てられます。

COBOLデータは,同じスレッド内に限り共用できます。したがって,ほかのスレッドのCOBOLデータは共用できません。また,同じスレッド内であっても,Cプログラムのデータは共用できません。

(4) プログラムのコーディング

マルチスレッド対応COBOLプログラムは,通常のCOBOLプログラムを作成するときと同じようにコーディングできます。特殊な命令文は使用しません。

(5) スレッド制御方式の指定

マルチスレッド対応COBOLプログラムを作成するときには,システムごとのスレッド制御方式に対応したスレッド関数ライブラリをリンクする必要があります。各システムで使用できるスレッド制御方式,およびスレッド関数のリンク方法については,「26.2.2 マルチスレッド対応COBOLプログラムのリンク」を参照してください。