名前
CORBA::ORB::set_client_timer - サーバメソッド待機時間の設定
形式
#include <orb_cplus.h> void CORBA::ORB::set_client_timer( CORBA::Object_ptr obj, CORBA::Long time, CORBA::Environment &env );
機能説明
クライアントアプリケーションにおいて、objに指定したサーバオブジェクトに対するサーバメソッドが復帰するまでの待機時間をtimeに設定します。ここで設定する待機時間は、objに指定したホスト上で動作するサーバオブジェクトすべてに対して有効となります。
パラメタ
待機時間を設定するサーバオブジェクトのオブジェクトリファレンス。
サーバメソッドが復帰するまでの待機時間(秒単位)。待機時間には、0から100000000までを指定することができます。0を指定した場合は、サーバメソッドが復帰するまでの待機時間を監視しません。
例外情報が格納される構造体。
復帰値
正常終了した場合は、復帰値はありません。
異常終了した場合は、envのexceptionメンバにSystemExceptionオブジェクトのオブジェクトリファレンスが設定され、SystemException_idに詳細情報が設定されます。_idの値と意味は次のとおりです。設定されたマイナーコードの意味については、“メッセージ集”の“CORBAサービスから通知される例外情報/マイナーコード”を参照してください。
objに不当なオブジェクトを指定しました。
timeに不当な値を指定しました。
メモリ不足が発生しました。
注意事項
本メソッドは、クライアントプロセスの待機時間をconfigファイルで設定される待機時間(period_receive_timeout×5秒)から変更する必要がある場合に使用します。
本メソッドは、サーバオブジェクトのオブジェクトリファレンスの獲得後にサーバへのリクエスト送信に先立って発行することにより、プロセス単位で待機時間を設定します。
業務アプリ動作中に待機時間を変更する場合、CORBA::ORB::net_disconnect()でコネクション情報を解放後、本メソッドを発行することにより新たに待機時間の設定ができます。
サーバオブジェクトのオブジェクトリファレンスの獲得前、または獲得時に、同じサーバマシンに対してリクエストが発行されていた場合は、本メソッドを発行する前にCORBA::ORB::net_disconnect()によってコネクション情報を解放する必要があります。例えば、サーバオブジェクトのオブジェクトリファレンスの獲得時にCosNaming::NamingContext::resolve()を使用した場合、かつネーミングサービスが動作しているマシンとサーバアプリケーションが動作しているマシンが同一である場合が該当します。