Posix/recv()

Jun 01, 2006 17:53

Блин, бился с час, наверное. В транспортном модуле постоянно возникала "транспортная" ошибка, т.е recv() возвращала результат -1.
while((len=recv(m_socket, buffer, BUFFER_LEN, 0))>0){...}
if (len<1) throw std::runtime_error(bla-bla);

Я уже думал валить все на магию, но при более пристальном вчитывании мана заметил фразу "If no messages are available at the socket, the receive call waits for a message to arrive, unless the socket is nonblocking (see fcntl(2)) in which case the value -1 is returned and the external variable errno set to EAGAIN".
После этого следовал поток непереводимой игры слов, которая характерна для местности моего проживания, в 2006 году...

programming

Previous post Next post
Up