Use this system macro to create an event, close an event, and query the
status of an event created for asynchronous input/output (I/O)
operations. These operations are associated with the perform subsystem
function or set subsystem mode channel control words (CCWs) issued to record
cache subsystem (RCS) devices where asynchronous notification is
requested.
See TPF General Macros for more information about
the FDCTC macro.
Format
- label
- A symbolic name can be assigned to the macro statement.
- FUNC
- The function to be performed. This parameter is required.
- CREATE
- Create an event token for asynchronous I/O operations.
- CLOSE
- Close an event token for asynchronous I/O operations.
- QUERY
- Query asynchronous I/O event operations status.
- WAIT
- Wait for completion of I/O operations for the event:
- YES
- Wait until all asynchronous operations for the event are complete before
returning. YES is the default.
- NO
- Return current status of operations for event.
- RETURN
- The type of status to be returned to the user in the RCS asynchronous
event status block (IDSAOS):
- ALL
- Return status of all operations. ALL is the default.
- PENDING
- Return status for pending operations only.
- COMPLETE
- Return status for all completed operations only.
- LEVEL=Dx
- The data level of the IDSAOS block. Acceptable levels range from D0
to DF.
- ERROR=label
- The label of a routine where processing is to continue in the event of an
error condition.
Entry Requirements
- A valid token must exist in the ECB field CE1TKN for the QUERY and CLOSE
functions.
- A CLOSE function must be performed before a second CREATE may be issued by
an ECB.
Return Conditions
One of the following return codes will be provided in R0.
- Return Code
- Meaning
- 0
- Successful completion.
- 4
- Token already active.
- 8
- The asynchronous event table is full.
- 12
- Operations pending for a token.
- 16
- ECB does not own token.
- 20
- A token number that is not valid. This token number is 0.
- 24
- Core block (IDSAOS) full.
Programming Considerations
- This macro can be run on any I-stream.
- Specifying RETURN=PENDING is not valid when WAIT=YES is specified.
- LEVEL, WAIT and RETURN parameters can only be specified when FUNC=QUERY is
specified.
- The LEVEL parameter is required when FUNC=QUERY is specified.
- A data block, mapped by IDSAOS, must be attached on the specified data
level to return status information for FUNC=QUERY.
Examples
None.