Вполне вероятно, что это произойдет, если не удалось установить соединение - например, с «тайм-аутом соединения» (для сокетов, выполняющих неблокирующее соединение, POLLOUT
устанавливается, когда операция соединения завершена как для успешной, так и для неудачной попытки результаты).
Когда для сокета устанавливается POLLOUT
, используйте getsockopt(sock, SOL_SOCKET, SO_ERROR, ...)
, чтобы проверить, успешно ли установлено соединение (в этом случае опция сокета SO_ERROR
равна 0, и в противном случае указывает, почему не удалось установить соединение).