I am building a server application using IOCP and most of the components are built so they can be re initialised at runtime in case of failure without the application crashing. While everything works fine even with high load i would like to know what are the possible errors in case of GetQueuedCompletionStatus fail with overlapped param null. Mainly what i would like to know is what error i would get if for some reason the port would become corrupt or the system would close it, or any other error that would mean i have to reinitialize the port.
To clarify, i am referring to this case from the docs: "If * lpOverlapped is NULL, the function did not dequeue a completion packet from the completion port. In this case, the function does not store information in the variables pointed to by the lpNumberOfBytes and lpCompletionKey parameters, and their values are indeterminate. "
And i am aware of ERROR_ABANDONED_WAIT_0.