bea ホーム | 製品 | dev2dev | support | askBEA |
![]() |
![]() |
|
![]() |
e-docs > Tuxedo > Tuxedo CORBA プログラミング・リファレンス > TP フレームワーク |
Tuxedo CORBA プログラミング・リファレンス
|
Tobj_ServantBase::_remove_ref()
概要
サーバントのリファレンスを解放します。このメソッドは、マルチスレッド・サーバ・アプリケーションの開発をサポートします。
注記 BEA Tuxedo リリース 8.0 以降で作成するアプリケーションでは、TP::application_responsibility() メソッドで使用していた C++ の「delete」文の代わりに、このメソッドを使用します。
C++ バインディング
void _remove_ref()
パラメータ
特にありません。
説明
このメソッドは、サーバントのリファレンスが必要でなくなった場合に呼び出します。このメソッドを呼び出すと、サーバントのリファレンス数が 1 つ減ります。_remove_ref() メソッドによってリファレンス数がゼロになると、このメソッドは自身の this ポインタに対して C++ の「delete」文を呼び出し、サーバントを削除します。
戻り値
特にありません。
例
if(servant != NULL)
servant->_remove_ref();
TP インターフェイス
TP インターフェイスでは、アプリケーション・コードで呼び出せるサービス・メソッドのセットが提供されます。これは、アプリケーション・コードで安全に呼び出せる TP フレームワーク内の唯一のインターフェイスです。その他のインターフェイスは、システム・コードでのみ呼び出すことを目的としたコールバック・メソッドを持っています。
このインターフェイスの目的は、ポータブル・オブジェクト・アダプタ (POA)、CORBA ネーミング・サービス、および BEA Tuxedo システムで提供される基本 API に対する呼び出しの代わりに、アプリケーション・コードで呼び出し可能な高レベルの呼び出しを行えるようにすることです。これらの呼び出しにより、プログラマはより簡単な API を使用できるので、複雑な基本 API を使用せずに済みます。TP インターフェイスでは、CORBA API を拡張した BEA Tuxedo ソフトウェアの以下の 2 つの機能を暗黙的に使用します。
FactoryFinder オブジェクトの詳細については、「FactoryFinder インターフェイス」を参照してください。ファクトリ・ベース・ルーティングの詳細については、『BEA Tuxedo アプリケーションの設定』を参照してください。
使用上の注意
C++ 宣言 ( TP.h 内)
C++ のマッピングは次のとおりです。
class TP {
public:
static CORBA::Object_ptr create_object_reference(
const char* interfaceName,
const char* stroid,
CORBA::NVList_ptr criteria);
static CORBA::Object_ptr create_active_object_reference(
const char* interfaceName,
const char* stroid,
Tobj_Servant servant);
static CORBA::Object_ptr get_object_reference();
static void register_factory(
CORBA::Object_ptr factory_or,
const char* factory_id);
static void unregister_factory(
CORBA::Object_ptr factory_or,
const char* factory_id);
static void deactivateEnable()
static void deactivateEnable(
const char* interfaceName,
const char* stroid,
Tobj_Servant servant);
static CORBA::ORB_ptr orb();
static Tobj_Bootstrap* bootstrap();
static void open_xa_rm();
static void close_xa_rm();
static int userlog(char*, ... );
static char* get_object_id(CORBA::Object_ptr obj);
static void application_responsibility(
Tobj_Servant servant);
};
![]() |
![]() |
![]() |
![]() |
||
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |