When I call WSARecv()
(or another Overlapped IO function), I could get an error immediately or I can get an error when I call GetQueuedCompletionStatus()
to dequeue a completion packet.
So is it accurate to assume that I must handle the error returned (for example: WSAECONNABORTED
) in these two places, or even if WSARecv()
returned an error immediately, I will also receive the same error when calling GetQueuedCompletionStatus()
and so I can only handle it in one place.