Perform an I/O request and wait for its finish
Source position: exec.pas line 1859
function DoIO( |
IORequest: PIORequest |
):LongInt; |
IORequest |
|
A sign-extended copy of the io_Error field of the I/O request. Most device commands require that the error return be checked. |
A pointer to an I/O Request initialized by OpenDevice()
This function requests a device driver to perform the I/O command specified in the I/O request. This function will always wait until the I/O request is fully complete.
DoIO() handles all the details, including Quick I/O, waiting for the request, and removing the reply message, etc..
This function first tries to complete the IO via the "Quick I/O" mechanism. The io_Flags field is always set to IOF_QUICK (0x01) before the internal device call.
The LN_TYPE field is used internally to flag completion. Active requests have type NT_MESSAGE. Requests that have been replied have type NT_REPLYMSG. It is illegal to start IO using a still active IORequest, or a request with type NT_REPLYMSG.
|
Initiate an I/O command |
|
|
Check status on an I/O request |
|
|
Wait for completion of an I/O request |
|
|
Attempt to abort an in-progress I/O request |