[openrtm-users 02776] Re: deleteComponentで致命的なエラー

服部静子 s.hattori @ aist.go.jp
2013年 3月 29日 (金) 13:31:21 JST


安藤さま

お忙しいところ、ご対応ありがとうございます。
服部です。

On Thu, 28 Mar 2013 16:08:40 +0900, Ando Noriaki <n-ando @ aist.go.jp> wrote:
> コンポーネントは削除する前に終了してあげる必要があります。
>
> manager->getComponent("ConsoleIn0")->exit();
> manager->join();
>
> で試してみていただけないでしょうか?
> rtc.confのmanager.shutdown_on_no_rtcs:YES
> を設定する必要があるかもしれません。詳しくはwebページのrtc.confのドキュメントもご覧ください。
> いま、出先なのでスペルミスなど細かいところで間違いがあったらすみません。

上記のコードを試してみました。
manager->join();
を実行すると、そこで処理がとまってしまいます。
manager->getComponent("ConsoleIn0")->exit();
だけにしたところ、うまくいきました。
(rtc.confのmanager.shutdown_on_no_rtcs:YES
はデフォルト値がYESなので、特に設定しなくてもいいようです。)

manager->join();
はなくても大丈夫なのでしょうか。
それと、
manager.shutdown_on_no_rtcs:NOの設定にしたり、
コンポーネントを二つ作成した後に1つだけ削除したりして、
コンポーネントを削除した後に、Managerのshutdownを行わないと、やはりエラーが起きるようなのですが、
これに対処する方法はありますか。






More information about the openrtm-users mailing list