IODONTWAIT [ MPE/iX Intrinsics Reference Manual ] MPE/iX 5.0 Documentation
MPE/iX Intrinsics Reference Manual
IODONTWAIT
NM and CM callable.
Initiates completion operations for an I/O request.
Syntax
_______________________________________________________
| |
| I16 I16V UDS I16 U16 |
| fnum:=IODONTWAIT(filenum,buffer,length,cstation)|
_______________________________________________________
Functional Return
fnum 16-bit signed integer (assigned functional return)
The file number for which the completion occurred.
If no completion occurred, zero is returned.
Parameters
filenum 16-bit signed integer by value (required)
The file number for which there is a pending I/O
request. If you specify 0, the IODONTWAIT
intrinsic checks for any I/O completion.
buffer user-defined structure (optional)
Passes an input buffer. This buffer must be large
enough to contain the input record. It should be
the same buffer specified in the original I/O
request if that was a read request. This allows
for a proper recognition of EOF where applicable.
The buffer parameter is required if not in
priviledged mode, or the buffer parameter can be
ommitted if the GETPRIVMODE intrinsic is called
first.
length 16-bit signed integer by reference (optional)
Returns the length of the received or transmitted
record. If the original request specified a byte
count, the integer represents bytes; if the request
specified half words, the integer represents half
words. This parameter is pertinent only if the
original I/O request was a read request. The FREAD
intrinsic always returns zero as its functional
return if you specify nowait I/O. In this case, the
actual record length is returned in the length
parameter of IODONTWAIT.
cstation 16-bit unsigned integer by reference (optional)
Returns the number of the calling station when
completed (used for distributed systems).
(ASC) Not used for asynchronous devices.
Operation Notes
The IODONTWAIT intrinsic operates the same as IOWAIT with one exception:
if you call IOWAIT and no I/O has completed, then the calling process is
suspended until some I/O completes; if you call IODONTWAIT and no I/O has
completed, then control is returned to the calling process. (CCE (2) is
returned and the result of IODONTWAIT is zero.)
Condition Codes
CCE (2) Request granted. If the functional return is not
zero, then I/O completion occurred with no errors.
If the functional return is zero, no I/O has
completed.
CCG (0) An end-of-file was encountered.
CCL (1) Request denied. Normal I/O completion did not
occur; there were no I/O requests pending, a
parameter error occurred, or an abnormal I/O
completion occurred.
Related Information
Intrinsics None
Commands None
Manuals Interprocess Communication Programmer's Guide
(32650-90019)
MPE/iX 5.0 Documentation