BEA Logo BEA Tuxedo Release 8.0

  BEA ホーム  |  イベント  |  ソリューション  |  パートナ  |  製品  |  サービス  |  ダウンロード  |  ディベロッパ・センタ  |  WebSUPPORT

 

   Tuxedoホーム   |   BEA Tuxedo C リファレンス   |   先頭へ   |   前へ   |   次へ   |   目次

 


tpsvrthrinit(3c)

名前

tpsvrthrinit()-BEA Tuxedo ATMI サーバのスレッドの初期化

形式

#include <atmi.h>
int tpsvrthrinit(int argc, char **argv)

機能説明

BEA Tuxedo ATMI のサーバでは、ディスパッチされたサービス要求を処理する各スレッドを初期化するときに、tpsvrthrinit() を呼び出します。このルーチンは、サーバに制御が移った後、サービス要求を処理する前に呼び出されます。このため、BEA Tuxedo ATMI とのコミュニケーションとトランザクションの定義をこのルーチンで行うことができます。ただし、接続がオープン状態にある場合や保留中の非同期応答がある場合、あるいはまだトランザクション・モードにある場合に tpsvrthrinit() が終了すると、BEA Tuxedo ATMI システムはその接続をクローズし、保留中の応答を無視し、サーバが終了する前にトランザクションを異常終了させます。

アプリケーションがサーバにこのルーチンを提供していない場合、BEA Tuxedo ATMI システムによって提供されたデフォルト・バージョンの tpsvrthrinit() が代わりに呼び出されます。デフォルト・バージョンの tpsvrthrinit()tx_open() を呼び出します。

tpsvrthrinit() は、シングルスレッド・サーバでも呼び出されます。シングルスレッド・サーバでは、tpsvrthrinit() はデフォルト・バージョンの tpsvrinit() から呼び出されます。複数のディスパッチ・スレッドが予測されるサーバでは、tpsvrinit()tpsvrthrinit() を呼び出しません。

アプリケーション固有のオプションをサーバに渡し、tpsvrthrinit() で処理させることができます。オプションの詳細については、servopts(5) を参照してください。このオプションは argcargv を使用して渡します。getopt() が BEA Tuxedo ATMI サーバで使用されているため、optarg()optind()、および opterr() を使用して tpsvrthrinit() のオプションの解析やエラー検出を制御できます。

tpsvrthrinit() でエラーが生じた場合、アプリケーションから -1 を返して正常に (サービス要求をとらずに) サーバのディスパッチ・スレッドを終了させることができます。アプリケーションが、exit() やその他オペレーティング・システムのスレッド終了関数を呼び出してはいけません。

戻り値

負の戻り値によって、サーバのディスパッチ・スレッドは正常に終了します。

使用法

サービス・ルーチンの外側で使用された場合 (たとえば、クライアントまたは tpsvrinit()tpsvrdone()tpsvrthrinit()tpsvrthrdone() で使用された場合)、tpreturn()tpforward() 関数は単純に返るだけで影響はありません。

関連項目

tpforward(3c), tpreturn(3c), tpsvrthrdone(3c), tpsvrthrinit(3c), tx_open(3c), servopts(5)

C 言語リファレンス・マニュアルの getopt(3)

 

先頭へ戻る 前のトピックへ 次のトピックへ