Rational Developer for System z
Enterprise COBOL for z/OS バージョン 4.1 プログラミング・ガイド


マルチスレッド化

マルチスレッド化の COBOL サポートを使用するには、プロセス、スレッド、実行単位、プログラム起動インスタンスの相互関係を理解する必要があります。

オペレーティング・システムおよびマルチスレッド化アプリケーションは、プロセス 内の実行フローを処理することができます。実行フローとは、プログラムのすべて、または一部が実行時に発生する一連のイベントです。 1 つのプロセス内で実行されるプログラムは リソースを共用することができます。プロセスは操作することができます。例えば、システムがプロセスの実行に使用する時間において、プロセスに高い、または低い優先順位を持たせることができます。

プロセス内で、アプリケーションは 1 つ以上のスレッド を 開始することができます。スレッドはそれぞれ、そのスレッドを制御する コンピューター命令のストリームです。マルチスレッド化 プロセスは、1 つの命令ストリーム (スレッド) で始まり、タスクを実行する他の命令ストリームを 後で作成することができます。これらの複数のスレッドは並行して実行することができます。スレッド内では、実行プログラムの間で制御権が移動します。

マルチスレッド化環境で、COBOL 実行単位 は、実行中のアクティブな COBOL プログラムが含まれているスレッドを含むプロセスの 部分です。COBOL 実行単位は、スレッドのいずれかの実行スタックでアクティブな COBOL プログラムがなくなるまで 継続します。例えば、呼び出される COBOL プログラムには GOBACK ステートメントが含まれていて、C プログラムに制御を戻します。実行単位内では、COBOL プログラムは非 COBOL プログラムを呼び出すことができ、逆に、非 COBOL プログラムは COBOL プログラムを呼び出すことができます。

スレッド内では、別々の COBOL および 非 COBOL プログラムの間で 制御が移動します。例えば、COBOL プログラムは別の COBOL プログラムまたは C プログラムを 呼び出すことができます。別々に呼び出されたプログラムはそれぞれ、プログラム起動インスタンス です。特定プログラムのプログラム起動インスタンスは、指定したプロセス内で複数のスレッドに存在することができます。

次の図に、プロセス、スレッド、実行単位、およびプログラム起動インスタンスの間の 関係を示します。

先行テキストで説明した、プロセス、スレッド、実行単位、およびプログラム起動間の関係。

関連概念
言語環境プログラム プログラミング・ガイド (プログラム管理モデル、基礎知識:
スレッド)

関連タスク  
マルチスレッド化サポートのための THREAD の選択  
マルチスレッド化されたプログラムへの制御権移動  
マルチスレッド化されたプログラムの終了  
マルチスレッド化によるファイルの処理
  
マルチスレッド化による COBOL 制限の処理

関連参照
THREAD


ご利用条件 | フィードバック

このインフォメーション・センターでは Eclipse テクノロジーが採用されています。(http://www.eclipse.org)