Hitachi

OpenTP1 Version 7 分散トランザクション処理機能 OpenTP1 クライアント使用の手引 TP1/Client/W,TP1/Client/P編


2.7 XATMIインタフェース機能

RPCでは,送受信できるデータの長さに制限があります。画像など,情報量の大きなデータは,RPCで規定されているデータ長を超えてしまう場合があります。TP1/Clientでは,XATMIインタフェース機能の一つである会話型サービスの通信を使用して,データを送受信できます。

会話型サービスの通信では,大きなデータをパケットと呼ばれるまとまりに分割します。分割されたパケットを数回に分けて送信することで,全体として一つのデータが送信されたことになります。

会話型サービスの通信を開始する場合,tpalloc関数を呼び出して,型付きのバッファを割り当てます。割り当て完了後,tpconnect関数を呼び出して,通常のメッセージ送受信と同様にコネクションを確立します。メッセージ送受信は,XATMIインタフェース機能のtprecv関数およびtpsend関数を呼び出して行います。メッセージ送受信を終了するときは,tpdiscon関数を呼び出してコネクションを切断し,tpfree関数によって型付きのバッファを解放します。会話型サービス時にエラーが発生した場合は,リターン値が返されます。

なお,TP1/Clientで使用できるXATMIインタフェース機能は,会話型サービスの通信だけです。

XATMIインタフェース機能の会話型サービスで通信する場合の処理の流れを,次の図に示します。

図2‒36 会話型サービスで通信する場合の処理の流れ

[図データ]

〈この節の構成〉