Hitachi

VisiBroker Version 5 Borland(R) Enterprise Server VisiBroker(R) デベロッパーズガイド


7.2.1 スレッドポリシー

スレッドポリシーでは,POAが使用するスレッドモデルを指定します。ThreadPolicyに使用できる値は次のとおりです。

ORB_CTRL_MODEL(デフォルト)

POAはリクエストをスレッドに割り当てる責任を負います。マルチスレッド環境では,同時に発生した複数のリクエストは,複数のスレッドで処理されます。Borland Enterprise Server VisiBrokerはマルチスレッドモデルを使用することに注意してください。

SINGLE_THREAD_MODEL

POAプロセスはリクエストを順次処理します。マルチスレッド環境では,POAがサーバントおよびサーバントマネージャに行う呼び出しはすべてスレッドセーフです。

MAIN_THREAD_MODEL

呼び出しは識別されたメインスレッドで処理されます。このポリシーを使用するPOAに対するすべてのリクエストは,順次処理されます。マルチスレッド環境では,このポリシーを使用するPOAによって呼び出されるサーバントのすべての処理は,スレッドセーフでなければなりません。

アプリケーションプログラマは,ORB::run()メソッドまたはORB::perform_work()メソッドを呼び出してメインスレッドを指定します。このメソッドの詳細については,「7.4 オブジェクトの活性化」を参照してください。