「スレッドセーフ」機能について

Document created by Miharu_Toyama Employee on Jul 7, 2015Last modified by Miharu_Toyama Employee on Jul 7, 2015
Version 1Show Document
  • View in full screen mode

文書番号: JTEC001737

製品名: CA Gen

バージョン:Advantage Gen 6.5

OS:


◆ 詳細内容

Q:Advantage Genは、IBM CICS v1.3の新たな「スレッドセーフ」機能をサポートしますか?
A:Advantage GenとIBM CICS/TSスレッドセーフの「Concurrency」オプションについて:

 

IBM社はCICS/TS v1.3において、Concurrencyオプションを導入しました。
これにより、プログラムを「quasirent(準再入可能)」または「threadsafe(スレッドセーフ)」のいずれかで定義することが可能になります。
Advantage GenのCICSランタイムはスレッドセーフでないため、この環境で実行されるAdvantage Genロード モジュールに対しては、このオプションを「quasirent」に設定する必要があります。 このように設定しないと、Advantage Genロード モジュールはさまざまな0Cxアベンドを起こして失敗する可能性があります。

 

Advantage Gen 7.0リリースにおいて、この制限を排除するよう開発を進めています。
SAS Cで現在実装されているMVSランタイムは、IBM Cへ変換中であり、スレッドセーフ環境をサポートしない結合ルーチンはすべて置き換えられる予定です。

 

Advantage Gen 7.0リリースでは、スレッドセーフ機能のConcurrencyオプションを使ってAdvantage Genロード モジュールを定義できるようになります。
これにより、生成モジュールはアベンドを起こすことなく動作するようになります。 ただし、これらのロード モジュールは依然として、完全なスレッドセーフとして実行されるわけではありません。
これは、Advantage Genランタイムが呼び出すCICS API関数には数多くあり、中にはIBMによってスレッドセーフ対応がなされていないものもあるためです。 したがって、これらのAPIが呼び出されると、アプリケーションは実行中に非スレッドセーフ(準再入可能)操作へと切り替えられることになります。
この切り替え操作は、パフォーマンス全体に悪影響を及ぼす可能性があります。 このことから、依然として「quasirent」が好ましいオプションだといえます。

 

以下は、Advantage Genが使用するすべてのCICS APIコマンドであり、2003年12月時点で、CICS Transaction Server for z/OS V2R3の『CICS System Programming Reference』または『CICS Application Programming Reference Guides』のいずれにおいてもスレッドセーフ対応とされていないものです。
IBM社によってこれらのAPIコールがスレッドセーフ対応に変換されれば、Advantage Genロード モジュールはスレッドセーフ操作から得られるパフォーマンス メリットを実現できるようになります。
EXEC CICS ALLOCATE (APPC)EXEC CICS READ FILE
EXEC CICS ASKTIMEEXEC CICS READNEXT
EXEC CICS CANCELEXEC CICS RECEIVE
EXEC CICS CONNECT PROCESSEXEC CICS RETRIEVE
EXEC CICS CONVERSE (APPC)EXEC CICS RETURN
EXEC CICS DELAYEXEC CICS ROUTE
EXEC CICS DELETE FILEEXEC CICS SEND (APPC)
EXEC CICS DUMPEXEC CICS SEND PAGE
EXEC CICS ENDBREXEC CICS SEND TEXT
EXEC CICS EXTRACT EXIT SYSEXEC CICS SET FILE
EXEC CICS FORMATTIMEEXEC CICS START
EXEC CICS FREE (APPC)EXEC CICS STARTBR
EXEC CICS HANDLE ABENDEXEC CICS SYNCPOINT
EXEC CICS INQUIRE FILEEXEC CICS SYNCPOINT ROLLBACK
EXEC CICS INQUIRE SYSTEMEXEC CICS VERIFY PASSWORD
EXEC CICS INQUIRE TRANSACTIOEXEC CICS WAIT EVENT
EXEC CICS INQUIRE TSQUEUEEXEC CICS WRITE FILE
EXEC CICS ISSUE CONFIRMATIONEXEC CICS WRITEQ TD
EXEC CICS POST

 

 


Attachments

    Outcomes