Hitachi

OpenTP1 Version 7 分散トランザクション処理機能 OpenTP1 プログラム作成の手引


2.1.10 CUPへの一方通知

OpenTP1のサーバUAPから,TP1/Clientのアプリケーションプログラム(CUP)へUAPが開始したことを通知できます。CUPへは,dc_rpc_cltsend関数【CBLDCRPC('CLTSEND ')】でデータを送って,サーバUAPの開始を通知します。この機能を使って,サーバの起動完了を一斉にクライアントへ知らせることができます。

dc_rpc_cltsend関数で通知したデータは,CUPのdc_clt_chained_accept_notification関数またはdc_clt_accept_notification関数で受け取ります。CUPがデータを受け取ることで,TP1/Clientはサーバが稼働中であることがわかります。その後,CUPからサーバへサービスを要求します。

dc_rpc_cltsend関数は,通知する先のCUPがdc_clt_chained_accept_notification関数またはdc_clt_accept_notification関数で通知を待っているときにだけ使えます。CUPが稼働していない場合には,dc_rpc_cltsend関数はエラーリターンします。また,dc_rpc_cltsend関数でデータを通知できるのは,CUPのdc_clt_chained_accept_notification関数またはdc_clt_accept_notification関数だけです。そのほかのプロセス(サーバUAPのプロセス)へは,データを送信できません。dc_clt_chained_accept_notification関数またはdc_clt_accept_notification関数については,マニュアル「OpenTP1 クライアント使用の手引 TP1/Client/W,TP1/Client/P編」を参照してください。

CUPへの一方通知の概要を次の図に示します。

図2‒9 CUPへの一方通知の概要

[図データ]