ループへの対処

ループとは、繰り返し実行される一連の命令です。 アプリケーションにコード化されたループは、常に終了が保証されていなければなりません。そうでないと CICS®で CPU使用率が高くなったり、トランザクションが異常終了するなどの症状が発生する可能性があります。 このセクションでは、終了しないループに関与しているプログラムを見つける手順の概略を説明します。

症状の一覧はループに記載されています。 ループが終了しない場合は、 終了条件が決して発生することがなかったり、テストが行われていなかったり、不正な条件付きブランチにより、条件に一致する場合にループが繰り返し実行されるようになっていたりする可能性があります。

いずれかのユーザー・アプリケーションにループしているコードがあることが判明した場合は、コードを調べてエラーのある命令を見つけます。 エラー CICSにあるように見える場合は、 IBMに連絡する必要があるでしょう。

一部の CICS ドメインは、独自のルーチンでループを検出し、以下のメッセージを送信することにより、ループの疑いがあることをユーザーに通知します。

DFHxx0004 適用ループの可能性が検出されました 
モジュールmodnameのオフセット X'offset'

2 つの文字 xx は、2 文字のドメイン・インデックスを表しています。 例えば、モニタリング・ドメインがループを検出した場合、メッセージ番号は DFHMN0004 になります。 このようなメッセージが繰り返し表示される場合は IBMにご連絡ください。