FALSE

Page Nav

HIDE

Grid

GRID_STYLE

Wait Event Command

The WAIT EVENT command EXEC CICS WAIT EVENT ECADDR(pointer-ref) END-EXEC Options ECADDR The pointer returned by the POST command in...

The WAIT EVENT command
EXEC CICS
WAIT EVENT ECADDR(pointer-ref)
END-EXEC

Options
ECADDR The pointer returned by the POST command in the SET field. This is a binary full word field PIC S9(8) COMP.

Conditions
INVREQ The address of the timer event control area is invalid.

The WAITCICS command
WAITCICS waits for events that post MVS-format ECBs. The command causes the issuing task to be suspended until one of the ECBs has been posted, that is until one of the events has occurred.


The task can wait on one or more ECBs. If it waits on more than one, it is dispatchable as soon as one of the ECBs is posted. You must ensure that each ECB is cleared, set to binary zeros, no later than the earliest time it could be posted. CICS cannot do this for you. If you wait on an ECB that has been previously posted and not subsequently cleared, your task is not suspended and continues to run as though the WAITCICS had not been issued.

CICS includes the addresses of all ECBs passed by WAITCICS commands of current tasks in the ECBLIST passed by CICS to the MVS WAIT facility when it runs out of work. Such ECBs can be posted using the MVS POST facility or by hand posting. Hand posting could, for example, be done by moving an appropriate value into the ECB. If hand posting is definitely not going to be used, it is preferable to use WAIT EXTERNAL.


A given ECB may not be waited on by more than one task at the same time. If this rule is not followed and the ECBLIST passed by CICS on the MVS WAIT contains duplicate ECB addresses, MVS abends CICS.


EXEC CICS
WAITCICS ECBLIST(ptr-value)
NUMEVENTS(data-value)
[ NAME(name)]


Options:
ECBLIST(ptr-value) Is a pointer to a list of addresses of MVS-format ECBs representing events. Both the ECBLIST and the ECBs can be above the 16MB line, that is they can be 31-bit addresses. Each ECB must be fullword aligned. Null (X'00000000' and X'FF000000') ECB addresses are ignored.
NAME(name) specifies the symbolic name, 1-8 alphanumeric characters, as the reason for the wait. The value you specify is returned in the SUSPENDVALUE or HVALUE option respectively of the EXEC CICS INQ TASK or CEMT INQ TASK commands.
NUMEVENTS(data-value) is the number of such events, corresponding to the number of addresses in the ECBLIST. The field is fullword binary. When NUMEVENTS is specified as one, ECBLIST must still be an address that points to a list containing just one ECB address.
Conditions
INVREQ An ECB is not valid, for example the ECB is not fullword aligned. NUMEVENTS is not a positive number. No valid ECBs have been found in the list, because either the ECBLIST address is not valid, or all the ECB addresses are not valid. The event control blocks (ECBs) specified are in user-key task-lifetime storage, and are inaccessible to another transaction that is expected to post the ECBs. The ECBs specified are in read-only storage.
    Default action: terminate the task abnormally.

No comments