HP 3000 Manuals

NOWAIT I O Intrinsics [ Interprocess Communication:Programmer's Guide ] MPE/iX 5.0 Documentation


Interprocess Communication:Programmer's Guide

NOWAIT I/O Intrinsics 

To perform a NOWAIT I/O, the FREAD or FWRITE intrinsic must be called to
initiate the transfer.  These intrinsics return immediately, and no data
is transferred yet.  The return value for FREAD is set to zero and is not
needed.

To complete the transfer, either IODONTWAIT or IOWAIT must be called.
IODONTWAIT tests whether the I/O has finished.  If it has, the intrinsic
returns a condition code of CCE and the file number as the return value.
If the I/O has not completed, CCE and a zero return value are passed
back.  If IOWAIT is called, it waits until the I/O has finished, like a
normal WAIT I/O FREAD or FWRITE.

Only one NOWAIT I/O can be outstanding against a file by a particular
accessor at a time; however, an accessor can have NOWAIT I/Os outstanding
against several files at the same time.  These I/Os can be completed by a
"generalized" IODONTWAIT or IOWAIT (the file number parameter is zero or
is omitted).  In this case, these intrinsics report on the first I/O to
complete, returning the file number for that file.  If the call to one of
these intrinsics is in a loop, then that one call can be used to complete
all the NOWAIT I/Os.


MPE/iX 5.0 Documentation