産総研 清水です。
サービスポートでのサービス実装は、
CORBAサーバントそのままですので、
当然、競合状態があることを前提で
ユーザが実装すべきだと私は思います。
私の場合、リエントラントでないサービスの実装を
するときは、mutexでロックをかけるようにしています。
以上、ご参考までに。
On Mon, 18 Feb 2008 03:26:00 +0900
"Takashi Kojima" wrote:
> 中央大学の小島です。いつも、お世話になっております。
>
> あるコンポーネントが他のコンポーネントのフラグ値を確認し、提供する機能を変えるという
> コールバック機能を、フラグ制御によってサービスポートで実現することを目指しています。
>
> しかし、複数のサービスポートが接続し、そのフラグの制御を行ってしまうと、
> 望んだ動作が得られなくなってしまうことが予想できます。
> (プロバイダのフラグを複数のコンシューマが値を変更する場合)
>
> このような誤動作を防ぐために、接続数の制限を設けたいと考えたのですが、実現可能でしょうか?
>
> (以前コールバックについての質問を拝見し、作成してみたりもしたのですが、テンプレートで作成し、
> 他の人がインターフェースとして使うには、コードの記述を加えるなど複雑になってしまいました。
> そこで、こちらから提供したidlファイルを使い、インターフェースを作成するだけで
> プロバイダの機能をを使えるようにしたかったため、このような形を実現したいと考えています。)
>
> ※補足
> 制限に関してですが、RTC-Link上や、SimpleIOなど外部からの操作に対し、
> エラーとなり接続制限がかかるという形で実現できると、なお嬉しいです。
> (そこまでいくと、おそらくコアな部分をいじらないと実現できないような気がしますが・・・)
>
> ご教授願います。
>
中央大学の小島です。いつも、お世話になっております。
あるコンポーネントが他のコンポーネントのフラグ値を確認し、提供する機能を変えるという
コールバック機能を、フラグ制御によってサービスポートで実現することを目指しています。
しかし、複数のサービスポートが接続し、そのフラグの制御を行ってしまうと、
望んだ動作が得られなくなってしまうことが予想できます。
(プロバイダのフラグを複数のコンシューマが値を変更する場合)
このような誤動作を防ぐために、接続数の制限を設けたいと考えたのですが、実現可能でしょうか?
(以前コールバックについての質問を拝見し、作成してみたりもしたのですが、テンプレートで作成し、
他の人がインターフェースとして使うには、コードの記述を加えるなど複雑になってしまいました。
そこで、こちらから提供したidlファイルを使い、インターフェースを作成するだけで
プロバイダの機能をを使えるようにしたかったため、このような形を実現したいと考えています。)
※補足
制限に関してですが、RTC-Link上や、SimpleIOなど外部からの操作に対し、
エラーとなり接続制限がかかるという形で実現できると、なお嬉しいです。
(そこまでいくと、おそらくコアな部分をいじらないと実現できないような気がしますが・・・)
ご教授願います。