# 同期転送と非同期転送

配信処理では、ファイル転送の完了を待ってから次の処理を実行するかどうかの処理方法を設定できます。

処理方法には以下の2種類があります。

- ファイル転送が完了するのを待ってから次の処理を実行する「同期転送」

- ファイル転送が完了するのを待たずに次の処理を実行する「非同期転送」

## 同期転送の流れ

同期転送の配信要求を行うと、ファイル転送が完了してから配信要求プログラムは次の処理を実行します。また、同期転送の送信要求を行うと、ファイル転送が完了してから送信要求プログラムは次の処理を実行します。同期転送の場合、配信処理または集信処理の完了コードを確認してから、ユーザージョブは次の処理を実行します。

同期転送での配信処理の流れを図2.9 で説明します。

図2.9 同期転送

1) 配信要求プログラムの起動

配信要求プログラムは、配信プログラムに配信を指示し、配信処理が終了するまで待ちます。

2) 配信処理の実行

配信プログラムは、配信待ちレコードの情報に従って、データを相手ホストに転送します。

3) 配信履歴の書き込み

配信処理の終了後、配信プログラムは配信履歴を集配信履歴ファイルに書き込みます。

4) 配信後ジョブの起動

配信プログラムは、配信後ジョブを起動します。

5) 配信要求プログラムの終了

配信プログラムからの配信完了通知を受け、配信要求プログラムは終了します。

## 非同期転送の流れ

非同期転送の配信要求を行うと、ファイル転送の完了を待たずに配信要求プログラムは次の処理を実行します。また、非同期転送の送信要求を行うと、ファイル転送の完了を待たずに送信要求プログラムは次の処理を実行します。非同期転送の場合、配信処理または集信処理は、要求を発行したユーザージョブとは非同期に実行され、その完了コードはユーザージョブに通知されません。

非同期転送での配信処理の流れを図2.10 で説明します。

図2.10 非同期転送

1) 配信要求プログラムの起動

配信要求プログラムは、配信プログラムに配信を指示します。

2) 配信要求プログラムの終了

配信要求プログラムは、配信プログラムに配信を指示すると終了します。配信処理の結果は、配信要求プログラムに通知されません。

3) 配信処理の実行

配信プログラムは、配信待ちレコードの情報に従って、データを相手ホストに転送します。

4) 配信履歴の書き込み

配信処理の終了後、配信プログラムは配信履歴を集配信履歴ファイルに書き込みます。

5) 配信後ジョブの起動

配信プログラムは、配信後ジョブを起動します。