[openrtm-users 02354] Windows版におけるonInitializeでのエラー後の動作

Yuki Suga ysuga @ ysuga.net
2011年 12月 14日 (水) 15:44:20 JST


OpenRTM-aist関係の皆様:
菅です.

OpenRTM-aist 1.1 RC3 + Windows 7 x64を使っています.

初歩的な質問ですが,件名のとおり,
onInitialize中でのエラー後の動作についてです.

onInitializeもReturnCode_tを返す仕様になっているので,
初期化時にエラーが起きた場合にRTC::RTC_ERRORを返してみたのですが,
不正な方法で終了しようとした,などとダイアログで表示されて,
プロセスが終了してしまいます.

試しに,例外を投げるようにしてみたのですが,
これでも同じ動作になりました.
(コードを見ましたが,結局,返り値をRTC:RTC_ERRORに直す作業を
RTObject::initialize内でやってるだけですよね)

出来れば,RTC-DaemonなどからRTCをcreateしたときでも,
onInitializeでエラーが起きた場合は,
安全にRTCをexit出来るといいと思うのですが,
OMGのspecification 1.0の方でも特にどのステートに移動するとか,
finalizeが呼ばれるとかの動作が規定されていないので不便です.

どなたか同じ問題を抱えた方はいらっしゃいますか?
この点については改善される予定はありますか?
ご意見を頂ければと存じます.

ではでは


-- 
///////////////////////////////////////////////////////////////////
// Yuki Suga, Ph.D.
// URL: http://www.ysuga.net/?lang=en
// E-mail: ysuga @ ysuga.net
///////////////////////////////////////////////////////////////////


openrtm-users メーリングリストの案内