What happens if I ReadFile()
10 bytes (in overlapped mode without a timeout) but invoke CancelIo()
after 5 bytes have been read? The documentation for CancelIo()
says that it cancels any pending I/O, but what happens to the 5 bytes already read? Are they lost? Are they re-enqueued so the next time I ReadFile()
I'll get them again?
I'm looking for the specification to indicate one way or another. I don't want to rely on empirical evidence.