|
|
rpc_sm_swap_client_alloc_free、 rpc_ss_swap_client_alloc_free(3c)
名前
rpc_sm_swap_client_alloc_free()、rpc_ss_swap_client_alloc_free()-クライアントのスタブが使用するメモリ管理および開放の機構を、クライアントが提供する機構に交換する
形式
#include <rpc/rpc.h>
void rpc_sm_swap_client_alloc_free(
idl_void_p_t (*p_allocate)(unsigned long size),
void (*p_free) (idl_void_p_t ptr),
idl_void_p_t (**p_p_old_allocate)(unsigned long size),
void (**p_p_old_free)( idl_void_p_t ptr),
unsigned32 *status)
void rpc_ss_swap_client_alloc_free(
idl_void_p_t (*p_allocate)(unsigned long size),
void (*p_free) (idl_void_p_t ptr),
idl_void_p_t (**p_p_old_allocate)(unsigned long size),
void (**p_p_old_free)( idl_void_p_t ptr))
機能説明
rpc_sm_swap_client_alloc_free() ルーチンは、クライアントのスタブが使用する現在のメモリ管理および開放の機構を、呼び出し側が提供するルーチンに交換します。入力パラメータ p_allocate および p_free には、新しいメモリ割り当ておよび開放のルーチンを指定します。出力パラメータ p_p_old_allocate および p_p_old_free には、このルーチンを呼び出す前に使用されていたメモリの割り当ておよび開放のルーチンが返されます。
呼び出し可能なルーチンが RPC クライアントの場合は、その呼び出し元が選択した機構にかかわらず、どのメモリ割り当ておよび開放のルーチンが使用されたかを確認する必要があります。このルーチンを使用すれば、メモリ割り当ておよび開放の機構を意図的に交換して、使用されたルーチンを確認することができます。
出力パラメータ status には、このルーチンからのステータス・コードが返されます。このステータス・コードは、ルーチンが成功して完了したか、または失敗した場合はその理由を示します。次は、ステータス・コードとその意味の一覧です。
rpc_ss_swap_client_alloc_free は、この関数の例外復帰バージョンで、出力パラメータ status を持ちません。このルーチンは次の例外を発生します。
マルチスレッドのアプリケーション中のスレッドは、TPINVALIDCONTEXT を含め、どのコンテキスト状態で実行していても、rpc_sm_swap_client_alloc_free() または rpc_ss_swap_client_alloc_free() の呼び出しを発行できます。
戻り値
なし
関連項目
rpc_sm_allocate、 rpc_ss_allocate(3c)、 rpc_sm_free、 rpc_ss_free(3c)、 rpc_sm_set_client_alloc_free、 rpc_ss_set_client_alloc_free(3c)
『TxRPC を使用した BEA Tuxedo アプリケーションのプログラミング』
|
Copyright © 2001 BEA Systems, Inc. All rights reserved.
|