名前
CosTransactions_Current_set_timeout
形式
#include "orb.h" #include "CosTransactions.h" void CosTransactions_Current_set_timeout( CosTransactions_Current current, CORBA_unsigned_long seconds, CORBA_Environment *env);
機能説明
指定されたseconds(秒数)をトランザクションのタイムアウト監視時間として設定します。secondsで設定した時間内に処理が完了しない場合、トランザクションはrollbackされます。また、secondsに0が指定された場合、タイムアウト監視はされません。
トランザクション実行中に呼び出された場合、指定されたタイムアウト値は次のトランザクションを開始するまで有効となりません。
パラメタ
CORBA_ORB_resolve_initial_referencesメソッド (CORBA_ORB_ObjectId_TransactionCurrent)で取得したCurrentインタフェースのオブジェクトリファレンスを指定します。
トランザクションのタイムアウト監視時間を指定します。
例外情報を獲得するためにCORBA_Environment構造体を参照するポインタを指定します。
復帰値
正常終了した場合は、env構造体の_majorにCORBA_NO_EXCEPTIONが設定されます。異常終了した場合は、env構造体の_majorにCORBA_SYSTEM_EXCEPTIONが設定され、env構造体の_idに詳細情報が設定されます。
システム例外の場合、以下の詳細情報が設定されます。
ex_CORBA_StExcep_NO_MEMORY: 動的メモリの獲得に失敗しました。 ex_CORBA_StExcep_INTERNAL: CORBAサービスで異常が発生しました。