Synchronous Transfer and Asynchronous Transfer

When you transfer a file using the Send File or Send Request commands, you can select from Synchronous Transfer or Asynchronous Transfer.

Flow of Synchronous Transfer

If you execute the Send File command (utlsend.exe) using Synchronous Transfer, the command does not terminate until sending is complete. Also, if you execute the Send Request command (utlrecv.exe) using Synchronous Transfer, the command does not terminate until receiving is complete. This allows the user job to confirm the Status code of sending or receiving before proceeding to the subsequent processing.

The flow of Synchronous Transfer is illustrated in Figure 2.8 .

Figure 2.8 Synchronous Transfer

1) Starting up the Send File command

The Send File command issues the Send File to the Send Acknowledge thread.

2) Sending a notification of Send File

The Send Acknowledge thread notifies the Send File command of the acceptance of the Send File.

3) Creating the Send thread

The Send Acknowledge thread creates the Send thread and transfers the file.

4) Sending a notification of Send completion

After completing the Send processing, the Send thread notifies the Send Acknowledge thread of the result of the file transfer and writes the result to the Send Log file (hulsndlog.db). In addition, the Send thread starts the job that is registered as a Post-send Job.

5) Completion of the Send File command

The Send Acknowledge thread receives a send completion notification from the Send thread and sends the information in the notification to the Send File command.

Flow of Asynchronous Transfer

If you execute the Send File command using Asynchronous Transfer, the command terminates before sending is complete. Also, if you execute the Send Request command using Asynchronous Transfer, the command terminates before receiving is complete. Sending or receiving is carried out asynchronously with the user job that issued the request, and the user job is not notified of the Status code of sending or receiving.

The flow of Asynchronous Transfer is illustrated in Figure 2.9 .

Figure 2.9 Asynchronous Transfer

1) Starting up the Send File command

The Send File command issues the Send File to the Send Acknowledge thread.

2) Completion of the Send File command

The Send Acknowledge thread notifies the Send File command of the acceptance of the Send File. The Send File command ends after receiving the notification.

3) Creating the Send thread

The Send Acknowledge thread creates the Send thread and transfers the file.

4) Sending a notification of Send completion

After completing the Send processing, the Send thread notifies the Send Acknowledge thread of the result of the file transfer and writes the result to the Send Log file (hulsndlog.db). In addition, the Send thread starts the job that is registered as a Post-send Job.