IOAREA: Keep or Free the I/O Work Area
- IOAREA=KEEP
- Specifies that, upon completion of the CVAF request, the program
should keep the CVAF I/O area associated with the CVAF parameter list.
You can code IOAREA=KEEP with BRANCH=NO only if the caller is authorized
(APF or system key).
If IOAREA=KEEP is coded, the caller must call CVAF with IOAREA=NOKEEP specified at some future time, whether or not any further VTOC access is required. An example of such a caller is the recovery routine of the routine that calls CVAF.
When you code IOAREA=KEEP, it allows subsequent CVAF requests to be more efficient, because the program can bypass certain initialization functions. You do not need to specify either DEB or UCB when a previously obtained CVAF I/O area is supplied; you also cannot change those values.
When IOAREA=KEEP is first issued, CVAF returns the CVAF I/O area in the CVAF parameter list (CVIOAR). Subsequent calls of CVAF can use that same parameter list, and CVAF obtains its I/O area from the CVIOAR.
When processing on the current volume is finished, release all areas that were kept.
- IOAREA=(KEEP,addr)
- Supplies the address of a previously obtained I/O area. If a different CVAF parameter list is used, the previously obtained I/O area can be passed to CVAF by coding its address as the second parameter of the IOAREA keyword.
- IOAREA=NOKEEP
- Causes the work area to be freed upon completion of the CVAF request.
- IOAREA=(NOKEEP,addr)
- Causes a previously obtained work area to be freed upon completion of the CVAF request.