HP 3000 Manuals

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