Codeigniter, он быстрый и очень документированный, имеет большое сообщество и, наконец, дружит с программистом.
В документах MSDN значение IRF_NO_WAIT
описывается как:
Не ждать данных. Если есть доступные данные, функция возвращает либо количество запрошенных данных, либо количество доступных данных (в зависимости от того, что меньше).
Таинственным образом она оставляет случай, когда есть не доступных данных, неопределенным. Очевидно, если нет данных , он блокируется до тех пор, пока они не появятся.
IRF_NO_WAIT означает не ждать, пока все запрошенного буфера данных будут заполнены. Однако он по-прежнему будет ждать некоторых данных. Если данные не поступают, блокируется.
Возможный обходной путь - использовать InternetQueryOption () для получения структуры INTERNET_DIAGNOSTIC_SOCKET_INFO, а затем передать дескриптор СОКЕТА в :: select () с таймаутом {0, 0} для определения наличия данных доступно без блокировки.