OSI通信機能を使用して通信するアプリケーションプログラムを作成する場合の注意事項について説明します。
OSI通信機能では,相手からのデータを受信すると,RECEIVE関数で受信するまでシステム内のバッファにデータを保存します。そのため,RECEIVE関数が発行されないと,システム資源が消費され,フロー制御などによって通信ができなくなることがあります。
これを防止するためには,アプリケーションプログラムは相手から受信したデータをできるだけ速やかにRECEIVE関数で受け取る必要があります。
ENABLE関数の発行後は,RECEIVE関数を常に発行し,データを受け取るようにしてください。
システム資源の消費を防止するために,アプリケーションプログラムは,次に示すどちらかの方法で作成してください。
XNF/ASでは,通信中にもxnfstopコマンドでOSI通信機能の停止処理ができます。OSI通信機能が停止すると,発行された関数はerrno=ENXIOでエラーリターンし,以降の処理は行えません。このような場合,アプリケーションプログラムは,CLOSE関数を発行して通信を速やかに終了させるようにしてください。