[openrtm-users 00947] Re: [openrtm-users 00938] 同一インターフェースのProvider,Consumerを持つサービスポートの不具合(OpenRTM-aist 0.4.2 C++)

Takashi Kojima tkjim48 @ gmail.com
2009年 9月 10日 (木) 09:52:23 JST


安藤様

>> 確認なのですが、
>> 現在の仕組みでは、すなわち、登録可能なサービスが2つ以上あった場合には、接続がおこなわれると、
>> 接続された先のServiceが、2つとも実行されるかと思ったのですが、最初に見つかったほうのみ、呼び出される
>> という仕様でよろしいでしょうか?
>> (検索する先がソートされた後ならば一定だが、そうでない場合は不定になる可能性もある)
>
> 基本的には、インターフェースのインスタンス名はかぶらないという前提です。
>
> ご質問は、仮に同名のプロバイダが複数と、コンシューマが1個の場合、
> どのように接続されるか、ということでしょうか?
> でしたら、最初に見つかったものがコンシューマに関連付けられ
> それだけが呼び出されるという動作であっています。
>
> コンシューマで使用さされる CorbaConsumer はCORBAオブジェクトの
> 単なるプロキシなので、一回の呼び出しで複数の別のオブジェクトが
> それぞれ呼び出されるという動作はしません。

はい、同名のプロバイダに接続されてしまっている時の挙動を確認したいと思っておりました。
最初にみつかったもののみ、呼び出される旨を承知いたしました。

双方向で、お互いにある同じサービスが授受できる仕組みを一つのポートでできないかと考え、
インターフェース名が同じものを持つ仕組みを作ってしまいました。
これを実現するには、ポートを別々にするしか手はなさそうですね。

ありがとうございました。


-- 
__________________________________________________________________
Takashi KOJIMA
E-Mail : tkjim48 @ gmail.com
Skype : tkjim48
MSN: taka_lx_xl_ @ hotmail.com




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