У меня возникли проблемы с пониманием того, как я могу принять несколько сокетов (быстро) при использовании перекрывающегося ввода-вывода (с подпрограммами завершения).
Так что на моем сервере это псевдокод:
while(true)
{
sock = accept();
WSARecv(sock, callback_function);
Wait(); // need to make the calling thread alertable
}
callback_function()
{
// process data here
}
Итак, как вы можете видеть, я могу принять только один сокет, а затем я перехожу в состояние ожидания, и только когда sock
получить то, что я смогу принять другой сокет!
Задача ещё не решена.