可変長データは、データをクライアントへ返却後、スケルトン中で自動的に解放します。
そのため、解放したくないデータについては、そのデータをどこか別の領域に複写しておく必要があります。
文字列(string)を例に説明します。
しかし、any、sequenceのような複雑な型の場合は、コピーする処理が複雑なため、リリースフラグを設定し、解放する/しないを設定できるようになっています。
リリースフラグの設定方法について述べます。
変数型 | 設定方法 |
---|---|
any | CORBA-ANY-SET-RELEASEを使用します。デフォルトは、CORBA-FALSE-VALUEです。(注) |
sequence | CORBA-SEQUENCE-SET-RELEASEを使用します。デフォルトは、CORBA-FALSE-VALUEです。(注) |
注) CORBA-TRUE-VALUEのとき解放されます。CORBA-FALSE-VALUEのときは、解放されません。