![]() |
![]() |
|
|
スタブ・サポート関数の使用
X/OPEN 仕様では、100 を越える膨大な数のランタイム・サポート関数が定義されています。これらの関数を、X/OPEN TxRPC IDL-only 環境ですべてサポートする必要はありません。これらの関数の大部分は、ATMI のクライアントやサーバに対して透過的に行われるバインディングと管理に関連したものです。
アプリケーションの移植性に影響を及ぼす事柄の 1 つに、スタブ用の入出力パラメータと戻り値に割り当てられるメモリの管理があります。Stub Memory Management ルーチンは、スレッドを扱う 2 つの関数を除き TxRPC ランタイムでサポートされています。状態を返す関数には以下のものがあります。
同等の例外を返す関数には以下のものがあります。
これらの関数の詳細については、『BEA Tuxedo C 言語リファレンス』を参照してください。
ランタイム関数は、libtrpc ファイルに含まれます。RPC クライアントとサーバの作成方法については、次のトピックで解説します。
メモリ管理を効果的に行う方法を次に示します。
rpc_ss_set_client_alloc_free(rpc_ss_allocate, rpc_ss_free);
ptr = remote_call_returns_pointer();
/* 返されたポインタをここで使用 */
...
rpc_ss_disable_allocate(); /* ptr を解放 */
rpc_ss_set_client_alloc_free(rpc_ss_allocate, rpc_ss_free);
long *ptr;
ptr = (long *)rpc_ss_allocate(sizeof(long));
![]() |
![]() |
![]() |
|
Copyright © 2001 BEA Systems, Inc. All rights reserved.
|