Dispatcher functions – IBM SC33-1683-02 User Manual

Page 332

Advertising
background image

maxlen

The maximum data length as {namel | (Rn) | expression}:

namel The name of a location containing a binary fullword giving

the maximum data length in bytes

(Rn)

A register, the contents of which specify in fullword binary
the maximum number of bytes of data

expression

A decimal integer, or any arithmetic expression, including
symbolic values, valid in assembler language; for example:

L'AREA ; L'AREA+10 ; L'AREA+X'22' ; SYMB/3+20 .

*

A required parameter to indicate that the parameter list is to be
used for the reserved fields.

Dispatcher functions

There are six XPI dispatcher functions. These are the DFHDSSRX calls
ADD_SUSPEND, SUSPEND, RESUME, DELETE_SUSPEND, and WAIT_MVS, and
the DFHDSATX call CHANGE_PRIORITY.

Usage of these dispatcher calls is very limited. Check the details supplied for each
exit in “Chapter 1. Global user exit programs” on page 3 before using any functions.

Notes:

1. You must issue an ADD_SUSPEND call to create a suspend token before you

issue a SUSPEND or RESUME call.

2. If a suspended task is canceled, the SUSPEND fails with a RESPONSE value

of ‘PURGED’ and a REASON value of ‘TASK_CANCELLED’. A corresponding
RESUME call returns with a RESPONSE value of ‘EXCEPTION’ and a
REASON value of ‘TASK_CANCELLED’.

3. If a suspended task is timed out, the SUSPEND fails with a RESPONSE value

of ‘PURGED’ and a REASON value of ‘TIMED_OUT’. A corresponding
RESUME call returns with a RESPONSE value of ‘EXCEPTION’ and a
REASON value of ‘TIMED_OUT’.

4. Dispatcher protocols require that you issue a RESUME even if the SUSPEND

was purged (due to task cancel or time-out). You must issue one and only one
RESUME for each SUSPEND call.

Synchronization protocols for SUSPEND and RESUME processing

This section describes the protocols that must be observed by users of XPI
SUSPEND and RESUME processing, so that task purging can be handled
effectively.

The normal synchronization protocol

In the normal case, synchronization involves two tasks and three operations. In the
following sample operations, the tasks are A (the task that requests a service) and
B (the task that processes a request from task A).

1. Task A starts the request by:

v

Setting the parameters to be used by task B

v

Resuming task B

the XPI functions

300

CICS TS for OS/390: CICS Customization Guide

Advertising