The application after redefinition in Version 4.2 of CICS TS
The application has now been analyzed to determine whether it is suitable to run on an open TCB in CICS® TS 4.2. As the results were positive, some CICS resource definitions have been changed, but no changes were needed to the application itself. Processing for the application now moves to an open TCB as soon as STPROG1 starts in the AOR, and remains on the open TCB throughout.

- An IPIC connection has been defined between the AOR and the DOR to take the place of the MRO connection. The new connection means that the function shipped EXEC CICS WRITEQ TS command, the EXEC CICS LINK command to link to program STPROG2 in the DOR, and the CICS-supplied mirror program DFHMIRS in the DOR, are all now threadsafe. The mirror task is a long-running mirror, where the MIRRORLIFE(TASK) attribute has been specified in the IPCONN resource definition to extend the lifetime of the mirror to the end of the task. The temporary storage queue request that was function shipped over the IPIC connection made CICS run DFHMIRS on an open TCB, and because MIRRORLIFE(TASK) is set, DFHMIRS continues to run on the open TCB for subsequent requests made by STPROG1.
- Program STPROG1 has been analyzed and its program logic was found to be threadsafe. It has therefore been redefined as CONCURRENCY(REQUIRED). This setting, which was introduced in CICS TS 4.2, means that processing moves to an open TCB as soon as the program starts. When a program is defined as CONCURRENCY(REQUIRED), it does not need to wait for its first call to a resource manager before it can move to an open TCB, so it does not run on the QR TCB at all, unless it contains a command that is not threadsafe which must be processed on the QR TCB. The EXEC CICS VERIFY PASSWORD command, which is now threadsafe, does not cause a switch to the QR TCB.
- Program STPROG2 has also been redefined as CONCURRENCY(REQUIRED). This setting means that CICS now runs the program on an open TCB from the start, rather than waiting until the program accesses the resource manager, as was the case when the program was defined as CONCURRENCY(THREADSAFE).
Following these changes, most of the processing for the application now takes place on an open TCB. The definition CONCURRENCY(REQUIRED) for program STPROG1 starts that program on an open TCB, and processing remains on an open TCB throughout, until program STPROG1 completes. Throughput can increase in the CICS region because the QR TCB is freed for other applications, and also because the example application is no longer single-threaded through the QR TCB, so more instances of it can run concurrently. There was no need to change the application itself.
The connection between the TOR and the AOR is still an MRO connection. This connection does not affect the processing for the application, so it remains as it was for now. In a future phase, the administrator might want to define an IPIC connection between the TOR and the AOR, to avoid having to manage different connection types within the application.