Using IS RECURSIVE on the PROGRAM-ID statement
The IS RECURSIVE clause on the PROGRAM-ID statement specifies that the COBOL program can be recursively called while a previous invocation is still active.
The IS RECURSIVE clause is required for all programs that are compiled with the THREAD compiler option.
Performance considerations
for using IS RECURSIVE on the PROGRAM-ID statement (measuring CALL
overhead only):
- One testcase (an LE-conforming Assembler repeatedly calling COBOL)
using IS RECURSIVE was 15 % slower than not using IS RECURSIVE. Note: This test measured only the overhead of the CALL (i.e., the subprogram did only a GOBACK); thus, a full application that does more work in the subprograms is not degraded as much.