トランザクショナル分散オブジェクト基盤 TPBroker Object Transaction Monitor プログラマーズガイド

[目次][索引][前へ][次へ]

TSCClient(COBOL)

TSCClientはシステム提供クラスです。

ABC_TSCprxyをTSCデーモンと関連づける場合,ABC_TSCprxyを生成する時点で,TSCClientはABC_TSCprxy-NEW副プログラムの引数に渡されます。

TSCClientは,TSCデーモン中のクライアントアプリケーション管理部分を表すクラスです。クライアントアプリケーション側からのTSCユーザオブジェクトの呼び出し要求は,TSCClientを経由してTSCデーモンに渡されます。

ユーザは,クライアントアプリケーションがTSCデーモンと接続するときにTSCClientを取得します。クライアントアプリケーションとTSCデーモンの接続には,TSCデーモンと直結する方法と,TSCレギュレータを経由する方法があります。次にTSCClientの特徴を示します。

TSCデーモンに直結する場合のTSCClientの取得

クライアントアプリケーションとTSCデーモン間の直結の接続は,クライアントアプリケーションプロセス内でTSCClientを最初に取得するときに確立されます。その後,同じTSCデーモンに対してTSCClientを取得する場合は,その接続を共有します。逆に,取得したすべてのTSCClientを解放すると接続が切断されます。

一つのクライアントアプリケーションから複数のTSCデーモンへ接続を確立することもできます。また,TSCユーザオブジェクト呼び出し要求が,この接続を経由してTSCデーモンに渡される場合,並行して処理されます。

ただし,シングルスレッドライブラリを使用するアプリケーションプログラムの場合,TSCデーモンに直結してリクエストできません。

TSCレギュレータを経由する場合のTSCClientの取得

TSCレギュレータを経由する場合のクライアントアプリケーションとTSCデーモン間の接続は,TSCClientを取得するたびに確立されます。逆に,TSClientを解放するたびに,割り当てられた接続が切断されます。

一つのクライアントアプリケーションから複数のTSCデーモンへ接続を確立することもできます。また,TSCユーザオブジェクト呼び出し要求がこの一つの接続を経由してTSCデーモンに渡される場合,並行して処理されないで順番に処理されます。

形式

 
CALL 'TSCClient-getTSCDomainName' USING
            BY VALUE       CLIENT-PTR
            BY REFERENCE   CORBA-ENVIRONMENT
         RETURNING         DOMAIN-NAME.
 
CALL 'TSCClient-getTSCID' USING
            BY VALUE       CLIENT-PTR
            BY REFERENCE   CORBA-ENVIRONMENT
         RETURNING         TSCID.

副プログラム

●CALL 'TSCClient-getTSCDomainName' USING

            BY VALUE          CLIENT-PTR
            BY REFERENCE      CORBA-ENVIRONMENT
         RETURNING            DOMAIN-NAME.
 
項目 型・(入出力の区別)意味
引数 BY VALUE CLIENT-PTR USAGE POINTER (入力)TSCClientのポインタ
BY REFERENCE CORBA-ENVIRONMENT (出力)例外情報集団項目
戻り値 DOMAIN-NAME USAGE POINTER TSCドメイン名称のポインタ
例外 TSCBadParamException

TSCドメイン名称を返します。

●CALL 'TSCClient-getTSCID' USING

            BY VALUE          CLIENT-PTR
            BY REFERENCE      CORBA-ENVIRONMENT
         RETURNING            TSCID.
 
項目 型・(入出力の区別)意味
引数 BY VALUE CLIENT-PTR USAGE POINTER (入力)TSCClientのポインタ
BY REFERENCE CORBA-ENVIRONMENT (出力)例外情報集団項目
戻り値 TSCID USAGE POINTER TSC識別子のポインタ
例外 TSCBadParamException

TSC識別子を返します。

マルチスレッド環境での副プログラム呼び出し規則

マルチスレッド環境で,TSCClientクラスのインスタンスの副プログラムを呼び出す規則を次に示します。

副プログラム 複数のスレッド上からの同時呼び出し
TSCClient-getTSCDomainName できます。
TSCClient-getTSCID できます。

インスタンスの副プログラム呼び出しの内部参照(アクセス)規則

TSCClientクラスのインスタンスがほかのクラスのインスタンスを内部参照(アクセス)する規則を次に示します。

副プログラム 内部参照
TSCClient-getTSCDomainName ありません。
TSCClient-getTSCID ありません。

インスタンスへの内部参照(アクセス)規則

TSCClientクラスのインスタンスを解放したあと,このインスタンスを内部参照するインスタンスからのアクセスは,メモリアクセス違反となります。OTMは,その際の動作を保証しません。

また,複数のスレッドから同時にこのクラスの同じインスタンスを内部参照できます。