3.3.10 メッセージを送信する順序とアプリケーションを起動する順序
OpenTP1では,相手システムへのメッセージの送信とdc_mcf_execap関数によるアプリケーションの起動を次のようにスケジュールします。
(1) 論理端末にメッセージを送信する順序
OpenTP1では,コネクションで接続されている論理端末間で,先入れ先出し(FIFO)とメッセージの優先度に従って送信しています。
一つのメッセージが複数のセグメントから構成される場合,各セグメントを連続して送信します。一つのメッセージを送信後,次のメッセージを論理端末に送信します。複数のUAPからの送信要求に対する処理順序を関数の呼び出し順とするかコミット順とするかは,UAP共通定義(mcfmuap -c)のorderオペランドで指定します。論理端末への送信順序を次の図に示します。
(2) メッセージの種類と送信優先度の関係
UAPが送信するメッセージの種類によって,優先度が異なります。一つの論理端末に対して異なる種類のメッセージが送信待ちの場合,優先度の高いものから先に送信します。同じ種類のメッセージの場合は,FIFOで順次送信します。
メッセージ種別 |
送信優先度 |
---|---|
応答メッセージ |
高 |
一方送信メッセージ(優先) |
中 |
一方送信メッセージ(一般)/問い合わせメッセージ |
低 |
OpenTP1では,FIFOによる送信順序と,送信優先度による送信順序とを組み合わせて送信しています。FIFOと送信優先度の組み合わせ送信順序を次の図に示します。
(3) dc_mcf_execap関数でアプリケーションを起動する順序
複数のUAPからのdc_mcf_execap関数に対する処理順序を関数の呼び出し順とするかコミット順とするかは,UAP共通定義(mcfmuap -c)のorderオペランドで指定します。アプリケーションの起動順序を次の図に示します。