[openrtm-users 03276] ウィンドウを閉じた場合のコンポーネントの終了処理

MASUTANI Yasuhiro masutani @ isc.osakac.ac.jp
2016年 4月 21日 (木) 19:06:50 JST


安藤様,MLの皆様,

お騒がせしております.大阪電通大の升谷です.

昨日が最初の授業でした.事前に色々想定試験をし,相談に乗っていただいた
おかげで,何とか終わりました.

想定外の事態としては,学生が使っているのはPanasonicのCF-RZ4なのですが,
ハードウェア的な無線LANのスイッチをオフにしても,OS上では無線LANのイン
タフェースが活きているという問題が多発したことです.事後に私が同じ機種
で試しても,それが再現できないので困っています.これは,OpenRTMとは関
係のないことですね.

さて,

At Wed, 20 Apr 2016 08:52:01 +0900,
Ando Noriaki <n-ando @ aist.go.jp> wrote:
> ご指摘はとりあえずチケットとして記録しました。
> よろしくお願いいたします。
> 
> http://redmine.openrtm.org/issues/3559
> http://redmine.openrtm.org/issues/3558

前のメイルでは三つのことを書いたつもりです.

> > コンポーネントを終了する際に,RT System EditorのExitやCtrl+cではなく,
> > ウィンドウの×ボタンを使うと,その後に接続線が消えなかったり,相手側の
> > ポートの色が変わらなかったり,また,相手のコンポーネントの動作が停止す
> > ることがありました.×ボタンを使うと,終了処理が他の場合とは異なるので
> > しょうね.当初は,Ctrl+cと違いがないつもりでいましたので,混乱しました.

に関してはいかがでしょうか?

もう少し試したところ,この問題は,別のPC上のコンポーネントと接続してい
る場合にしか起きません.同じPC上のコンポーネントと接続している場合
は,×ボタンで終わっても,少しタイムラグはありますが,上述のような問題
は発生しません.

現象から推測しているのですが,

・RT System EditorでコンポーネントをExit.
・コンポーネントのウィンドウでCtrl+c.

と

・コンポーネントのウィンドウで×ボタンをクリック(ウィンドウを閉じる).

では,内部の終了処理が違うのではないでしょうか?

Windowsについて詳しく知らないのですが,少し調べてみたところ,×ボタンを
押すとWM_COLSEというメッセージが飛ぶそうで,これを捕まえないといけない
のですね.コンポーネントのライブラリの中では,それをやっているでしょう
か?

-- 
# 升谷 保博
# 大阪電気通信大学 総合情報学部 情報学科
# 575-0063 大阪府四條畷市清滝1130-70 / TEL&FAX: 072-876-5107


More information about the openrtm-users mailing list