前のトピック: コマンドの発行

次のトピック: OCS からの REXX プログラムの開始

OCS からの NCL プロセスの実行または開始

端末の各ウィンドウには、NCL 処理環境があります。ウィンドウの代わりにこの処理環境で、コマンドおよび NCL プロセスを実行できます。

EXEC コマンドまたは START コマンドを使用して呼び出した NCL プロセスは、OCS ウィンドウの NCL 処理環境で実行されます。

注:  誤って EXEC コマンドまたは START コマンドを入力した場合、システムはこのコマンドを NCL プロセスとして実行しようと試みます。

各 NCL プロセスは、コマンドの発行を可能にする従属処理環境を持つことも、&INTCMD ステートメントを使用して、別の NCL プロセスを単独で実行することもできます。 NCL プロシージャでは、ROF セッションを使用して別のシステムから情報を収集できます。

NCL プロセスの順次実行

OCS ウィンドウでは、NCL プロシージャのシリアル ストリームを実行して、このプロシージャを順次呼び出すことが可能です。 順次実行は、短期間のプロセスに適しています。

NCL プロセスを順次実行するには、EXEC コマンドを使用します。

EXEC コマンドにより呼び出されたプロセスは、&PAUSE ステートメントを発行して OCS ウィンドウからさらに入力があるまで待機できます。 GO コマンド、END コマンド、FLUSH コマンド、および INTQ コマンドを、プロセス固有の ID と一緒に使用すると、プロセスと通信することが可能です。

例: プロセスの順次実行

PROC1 と PROC2 を順に実行するには、以下のコマンドを入力します。

EXEC PROC1
EXEC PROC2

OCSウィンドウでは、2 つのプロセスが EXEC キューに入れられます。このキューは、先着順で実行されます。 プロセス PROC1 は即時実行としてスケジュールされ、プロセス PROC2 は PROC1 の終了後に実行されるよう待機しています。

NCL プロセスの並行実行

OCS ウィンドウでは、NCL プロセスを並行して同時に実行できます。

NCL プロセスを同時実行するには、START コマンドを使用します。 NCL プロシージャの名前を単独で入力する場合、START コマンドを意味します。

開始された任意のプロシージャは、OCS ウィンドウからの GO、END および FLUSH コマンドからさらに入力を待つために &PAUSE ステートメントを発行できます。 これらのコマンドを、プロセス固有の ID と一緒に使用すると、そのプロセスと明示的に通信可能です。

例: NCL プロセスの並行実行

PROC1 と PROC2 を同時に実行するには、以下のコマンドを入力します。

START PROC1
START PROC2

NCL ID

各 NCL プロセスには固有の ID が割り振られます。この ID により、NCL プロセスは発行側の OCS ウィンドウとリンクされます。 これにより、NCL プロセス(またはこの NCL プロセスによって開始または実行されたすべてのプロセス)によって発行されたすべての &WRITE ステートメントまたは &PANEL ステートメントは、確実にその OCS ウィンドウだけに戻されるようになります。 ウィンドウが終了すると、待機中のプロセスはすべて削除されます。

順次プロセスまたは並行プロセスからの NCL プロセスの実行

OCS ウィンドウから実行される NCL プロセス(またはそれによって呼び出されるすべてのプロセス)は、それ自体で EXEC コマンドや START コマンドを発行できます。

NCL プロセスが EXEC コマンドを使用して実行されている場合、このコマンドの発行プロセスは、新規プロセスの実行が開始されると中断されます。 新規プロセスが終了するまで、プロセスの発行の再開処理は実行されません。

このように、別のプロセス内からプロセスを呼び出す方法を、ネスティングと呼びます。 ネスティングは、一連のプロセスを構成する場合に使用すると便利です。

注:  ネスティング プロシージャは、&CALL PROC NCL ステートメントを使用して呼び出すことをお勧めします。

START コマンドを使用して NCL プロセスを呼び出した場合、新規プロセスの実行が即時に開始されます。 新規プロセスは、呼び出し側プロセスと並行して実行されますが、これらのプロセスは依存関係にはありません。 各プロセスは別のプロセスの終了によって影響されません。

開始プロシージャの利点

START コマンドを使用した NCL プロシージャの呼び出しには、以下の利点があります。