FileIOCompletionRoutine
The FileIOCompletionRoutine
function is called when an asynchronous input and output (I/O) function (ReadFileEx
VOID WINAPI FileIOCompletionRoutine(
DWORD dwErrorCode, |
// completion code |
DWORD dwNumberOfBytesTransfered, |
// number of bytes
transferred |
LPOVERLAPPED lpOverlapped |
// pointer to
structure with I/O information |
); |
|
Parameters
dwErrorCode
Specifies the
I/O completion status. This parameter may be one of the following values:
Value |
Meaning |
0 |
The I/O was
successful. |
ERROR_HANDLE_EOF |
The ReadFileEx |
dwNumberOfBytesTransfered
Specifies the
number of bytes transferred. If an error occurs, this parameter is zero.
lpOverlapped
Points to the
OVERLAPPED
Windows does
not use the hEvent member of the OVERLAPPED structure; the
calling application may use this member to pass information to the completion
routine. Windows does not use the OVERLAPPED structure after the completion
routine is called, so the completion routine can deallocate the memory used by
the overlapped structure.
Return Values
This function
does not return a value.
Remarks
The FileIOCompletionRoutine
function is a placeholder for an application-defined or library-defined
function name.
Returning
from this function allows another pending I/O completion routine to be called.
All waiting completion routines are called before the alertable thread s wait
is satisfied with a return code of WAIT_IO_COMPLETION. Windows may call the
waiting completion routines in any order. They may or may not be called in the
order the I/O functions are completed.
Each time
Windows calls a completion routine, it uses some of the application s stack. If
the completion routine does additional asynchronous I/O and alertable waits,
the stack may grow.
See Also