2.5 端末キュー機能
MCPでは,端末キュー機能によって,論理端末単位のイベントをシリアルに処理できます。論理端末単位のイベントには,メッセージ受信,コネクション確立・解放,および論理端末の閉塞・閉塞解除があります。
端末キュー機能を使用するかどうかは,eemcpfunc定義コマンドの-qオプションで指定します。
端末キュー機能を使用した場合の処理の流れを次の図に示します。
|
|
- 説明
-
-
相手システムから受信した入力メッセージは,一度端末キューに登録されます。
-
入力メッセージを端末キューに登録したあと,入力メッセージを該当するサービスに接続されている入力キュー(ITQ)に登録します。
-
入力キューからメッセージを読み出し,UAPを起動します。
-
3.で起動されたUAPがリターンすると,次のメッセージが端末キューから入力キュー(ITQ)に登録されます。
-
コネクション,論理端末などの状態によって,端末キューの扱いは異なります。状態別の端末キューの扱いについて,次に説明します。
- ■コネクション障害時
-
コネクション障害が発生した場合は,該当するコネクションに対応する論理端末の端末キューに滞留しているすべてのメッセージを破棄します。ただし,すでに入力キューに登録されている入力メッセージは破棄されないで,UAPの処理を続行します。
- ■論理端末閉塞時(TCP/IPプロトコル使用時)
-
TCP/IPプロトコルを使用している場合に論理端末が閉塞しているときは,該当する論理端末の端末キューを引き出し禁止にします。端末キューの引き出しは,論理端末を閉塞解除したタイミングで再開されます。
なお,論理端末が閉塞中のままeesvstopコマンドを実行してオンラインを終了させた場合,端末キューに滞留中の入力メッセージは,すべて破棄されます。
- ■論理端末閉塞時(UDPプロトコル使用時)
-
UDPプロトコルを使用している場合に論理端末が閉塞しているときは,TCP/IPプロトコル使用時のコネクション障害時と同様に,論理端末の端末キューに滞留しているメッセージを破棄します。
- ■オンライン終了時
-
端末キューの使用有無に関係なく,論理端末が閉塞している場合にeesvstopコマンドを実行してオンラインを終了させたときは,滞留しているメッセージを破棄したあとにオンラインを終了させます。