[openrtm-users 00792] サービスポートを使ったデータの受信について

1 つの投稿 / 0 new
root
オフライン
Last seen: 2日 5時間 前
登録日: 2009-06-23 14:31
[openrtm-users 00792] サービスポートを使ったデータの受信について

はじめて投稿させていただきます。
富士通研究所の深貝と申します。

大容量(12MB)の構造体をサービスポートの関数の返り値として返
すようにしたところ、コンポーネントのactivate時にエラーが
発生してしまいました。
サイズが小さな構造体を返すようにしたときは問題がなかったので、
返す構造体の大きさに制限があるのではと考えています。

データポートでは2MBの制限があり、それはrtc.confにて最大サイズを
指定することで回避できるとのことでしたが、サービスポートの場合は
rtc.confに、
corba.args: -ORBgiopMaxMsgSize 31457280
のように30MBの最大値を指定しても問題を回避できませんでした。

サービスポートで扱うことのできるデータのサイズはデータポートとは
異なるのでしょうか?

以下にバグ再現用のテストで用いたIDLファイル記します。

---ここから--
const unsigned long DATA_SIZE = 3145728;
struct Data {
unsigned long info[DATA_SIZE];
unsigned long size;
};
interface TestService{
Data getData();
};
---ここまで--

環境はOpenRTM-aist-0.4.2, OSはWindows XP, コンパイラはVisual C++ 2008です。
以上、よろしくお願いいたします。

未定義

ダウンロード

最新バージョン : 2.0.1-RELESE

統計

Webサイト統計
ユーザ数:2195
プロジェクト統計
RTコンポーネント307
RTミドルウエア35
ツール22
文書・仕様書2

Choreonoid

モーションエディタ/シミュレータ

OpenHRP3

動力学シミュレータ

OpenRTP

統合開発プラットフォーム

産総研RTC集

産総研が提供するRTC集

TORK

東京オープンソースロボティクス協会

DAQ-Middleware

ネットワーク分散環境でデータ収集用ソフトウェアを容易に構築するためのソフトウェア・フレームワーク