RTEREUS (COBOL only)

Derivation: Run Time Environment REUSe

RTEREUS implicitly initializes the runtime environment to be reusable when the main program for the thread is a COBOL program. This option is valid only when specified at the system level, region level, in a CEEUOPT, or in the CEEBXITA assembler user exit.

The default value for non-CICS applications is NORTEREUS.

RTEREUS is ignored under CICS®.

Read syntax diagramSkip visual syntax diagram
Syntax

   .-NORTEREUS-.   
>>-+-RTEREUS---+-----------------------------------------------><

NORTEREUS
Does not initialize the runtime environment to be reusable when the first COBOL program is invoked.
RTEREUS
Initializes the runtime environment to be reusable when the first COBOL program is invoked.

Usage notes

  • Restriction: Enterprise COBOL programs compiled with the THREAD compiler option do not run with RTEREUS(ON).
  • Guideline: Avoid using RTEREUS(ON) as a system-level or region-level default. If you do use RTEREUS, use it for specific applications only.
  • Under Language Environment®, RTEREUS(ON) is only supported in a single enclave environment unless you modify the behavior using the IGZERREO CSECT. With the IBM® supplied default setting for COBOL's reusable environment, applications that create multiple enclaves will terminate with error message IGZ0168S. Multiple enclaves can be created by applications that use SVC LINK or CMSCALL to invoke application programs. One example is when an SVC LINK is used to invoke an application program under ISPF that is using ISPF services (such as CALL 'ISPLINK' and ISPF SELECT).
  • If a Language Environment reusable environment is established (using RTEREUS), any attempts to run a C or PL/I main program under Language Environmentt will fail. For example, when running on ISPF with RTEREUS(ON):
    • The first program invoked by ISPF is a COBOL program. A Language Environment reusable environment is established.
    • At some other point, ISPF invokes a PL/I or C program. The initialization of the PL/I or C program fails.
  • If a large number of COBOL programs run (using RTEREUS) under the same MVS™ task, you can encounter out-of-region abends. This is because all storage acquired by Language Environment to run COBOL programs is kept in storage until the MVS task ends or the Language Environment environment is terminated.
  • Language Environment storage and runtime options reports are not produced by Language Environment (using RTEREUS) unless a STOP RUN is issued to end the enclave.
  • IMS™ consideration—RTEREUS is not recommended for use under IMS.
  • The IGZERREO CSECT affects the handling of program checks in the non-Language Environment-enabled driver that repeatedly invokes COBOL programs. It also affects the behavior of running COBOL programs in a nested enclave when a reusable environment is active.

Performance consideration

  • You must change STOP RUN statements to GOBACK statements to gain the benefits of RTEREUS. STOP RUN terminates the reusable environment. If you specify RTEREUS and use STOP RUN, Language Environment recreates the reusable environment on the next invocation of COBOL. Doing this repeatedly degrades performance, because a reusable environment takes longer to create than does a normal environment.
  • The IGZERREO CSECT affects the performance of running with RTEREUS.
  • Language Environment also offers preinitialization support in addition to RTEREUS.

For more information