Я видел несколько рецензий, сравнивающих select() с poll() или epoll(), и я видел много руководств, обсуждающих фактическое использование select() с несколькими сокетами.
Однако то, что я не могу найти, - это сравнение с неблокирующим вызовом recv() без select(). В случае наличия только 1 сокета для чтения и 1 сокета для записи, существует ли какое-либо обоснование для использования вызова select()? Метод recv() может быть настроен так, чтобы не блокировать и не возвращать ошибку (WSAEWOULDBLOCK), когда нет доступных данных, так зачем беспокоиться о вызове select(), когда у вас нет других сокетов для проверки? Является ли неблокирующий вызов recv() намного медленнее?
