TSCObject(COBOL)
TSCObjectはシステム提供クラスです。
TSCObjectはABC_TSCimplの基底クラスです。各副プログラムはABC_TSCimplのインスタンスに対して発行します。したがって,各副プログラムの第1引数(OBJECT-PTR)には,ユーザ定義IDLインタフェース依存クラス(ABC_TSCimpl)のポインタを指定してください。
TSCObjectは,OTMでの(サーバ)オブジェクトの基本クラスおよびインタフェースです。
ユーザはTSCObjectを継承させて,クライアント側にサービスを提供するクラスを定義します。また,サービスを提供するオブジェクトとして,その派生クラスのインスタンスを生成します。次にTSCObjectの特徴を示します。
TSCObjectが提供するサービスのインタフェース名称
TSCObjectが提供するインタフェースの種類は,TSCAcceptorのインタフェース名称の列で表されます。
TSCObjectが単数のインタフェースを提供する場合,提供するインタフェースの種類は,単数のインタフェース名称で表されます。
TSCObjectが複数のインタフェースを提供する場合,例えば,ユーザ定義IDLインタフェースで継承を利用した場合は,複数のインタフェース名称が列で表されます。
TSCObjectの呼び出し時のTSCContextの取得
TSCProxyObjectを使用してクライアント側からTSCObjectの副プログラムを呼び出すときに,ユーザは引数以外のデータをTSCContextとして送信できます。クライアント側引数以外のデータをTSCContextとして送信すると,サーバ側ではTSCObjectのサービス提供副プログラムが呼び出されている間にTSCObject-TSCContextGetを呼び出すことによって,クライアント側で指定したTSCContextを取得できます。
TSCObjectの呼び出し時のTSCThreadの取得
TSCObjectの呼び出し時のTSCThreadの取得は,TSCThreadFactoryを引数としてTSCRootAcceptorを生成する場合を前提にします。この場合,サーバ側でTSCObjectのサービス提供副プログラムが呼び出されている間にTSCObject-TSCThreadGetを呼び出すことによって,実行制御を持つスレッドに割り付けられているTSCThreadを取得できます。
形式
CALL 'TSCObject-TSCContextGet' USING
BY VALUE OBJECT-PTR
BY REFERENCE CORBA-ENVIRONMENT
RETURNING CONTEXT-PTR.
* TSCクライアント情報
CALL 'TSCObject-TSCThreadGet' USING
BY VALUE OBJECT-PTR
BY REFERENCE CORBA-ENVIRONMENT
RETURNING THREAD-PTR.
副プログラム
●CALL 'TSCObject-TSCContextGet' USING
BY VALUE OBJECT-PTR
BY REFERENCE CORBA-ENVIRONMENT
RETURNING CONTEXT-PTR.
項目 | 型・(入出力の区別)意味 | |
---|---|---|
引数 | BY VALUE OBJECT-PTR USAGE POINTER | (入力)ABC_TSCimplのポインタ |
BY REFERENCE CORBA-ENVIRONMENT | (出力)例外情報集団項目 | |
戻り値 | CONTEXT-PTR USAGE POINTER | TSCContextのポインタ |
例外 | TSCBadParamException |
クライアント側から呼び出すときに指定されたTSCContextを取得します。クライアント側から呼び出すときにTSCContextを指定しない場合は,NULLを返します。
●CALL 'TSCObject-TSCThreadGet' USING
BY VALUE OBJECT-PTR
BY REFERENCE CORBA-ENVIRONMENT
RETURNING THREAD-PTR.
項目 | 型・(入出力の区別)意味 | |
---|---|---|
引数 | BY VALUE OBJECT-PTR USAGE POINTER | (入力)ABC_TSCimplのポインタ |
BY REFERENCE CORBA-ENVIRONMENT | (出力)例外情報集団項目 | |
戻り値 | THREAD-PTR USAGE POINTER | TSCユーザスレッドのポインタ |
例外 | TSCBadParamException |
現在,実行制御を持つスレッドのTSCユーザスレッドを返します。
マルチスレッド環境での副プログラム呼び出し規則
マルチスレッド環境で,TSCObjectクラスのインスタンスの副プログラムを呼び出す規則を次に示します。
副プログラム | 複数のスレッド上からの同時呼び出し |
---|---|
_TSCInterfaceName | できません。 |
_TSCContext | できません。 |
_TSCThread | できません。 |
クライアント側からのオブジェクト呼び出し※ | できません。 |