I am setting up a server according to Winsock IO Completion Port. I am a little uncertain about what's happening in the background and hope I can get some help here.
When I call GetQueuedCompletionStatus() it blocks until a "background task" is completed. Given that it's eventually unblocked and continues, my understanding is that a thread in the background must have handled the task while the main program was blocked.
Given that I haven't created threads manually (CreateThread), I wonder if this happens automatically when I call CreateIoCompletionPort()