z/OS TSO/E REXX Reference
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


IRXTERMA routine

z/OS TSO/E REXX Reference
SA32-0972-00

The IRXTERMA routine terminates a language processor environment. IRXTERMA differs from the IRXTERM termination routine. IRXTERM terminates a language processor environment only if no active REXX execs are currently running in the environment. IRXTERMA terminates all active REXX execs under a language processor environment, and optionally terminates the environment. If you customize REXX processing and initialize a language processor environment using the IRXINIT initialization routine, when you terminate the environment, use the IRXTERM termination routine. For IRXTERM, see Termination routine - IRXTERM.

Tip: To permit FORTRAN programs to call IRXTERMA, TSO/E provides an alternate entry point for the IRXTERMA routine. The alternate entry point name is IRXTMA.

On the call to IRXTERMA, you specify whether IRXTERMA should terminate the environment in addition to terminating all active execs that are currently running in the environment. You can optionally pass the address of the environment block that represents the environment in which you want IRXTERMA to run. You can pass the address either in parameter 2 or in register 0. If you do not pass an environment block address, IRXTERMA locates the current non-reentrant environment that was created at the same task level and runs in that environment.

IRXTERMA does not terminate an environment if:
  • the environment was not initialized under the current task
  • the environment was the first environment initialized under the task and other environments are still initialized under the task

However, IRXTERMA does terminate all active execs running in the environment.

IRXTERMA invokes the exec load routine to free each exec in the environment. The exec load routine is the routine identified by the EXROUT field in the module name table, which is one of the parameters for the initialization routine, IRXINIT. All execs in the environment are freed regardless of whether they were pre-loaded before the IRXEXEC routine was called. IRXTERMA also frees the storage for each exec in the environment.

IRXTERMA sets the ENVBLOCK_TERMA_CLEANUP flag to indicate that IRXTERMA is cleaning up the environment. IRXTERMA frees all active execs and optionally terminates the environment itself. This ENVBLOCK_TERMA_CLEANUP flag may be used by the replaceable routines to allow special processing during abnormal termination. If IRXTERMA does not terminate the environment, the flag is cleared upon exit from IRXTERMA.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014