- 论坛徽章:
- 0
|
但是确实是在recv失败了,然后输出的errno。上面忘了说明了 ./xxx & 启动后 , 我是exit退出的。
最下面的LOG_ERROR会输出 CIoSocketEx::_DoHandleRead client[0,8] recv error[5:Input/output error]
程序是单线程的,按理这个errno应该就是这个socket产生的。
s32 recvLen = recv( m_socket, data, len, 0 );
printf("HandleRead\n" ;
if( recvLen==-1 && (errno==EAGAIN || errno==EWOULDBLOCK) )
{
// ...
}
else if( recvLen == 0 )
{
}
else if( recvLen > 0 )
{
// do something
}
else
{
LOG_ERROR( "CIoSocketEx::_DoHandleRead client[%d,%d] recv error[%d:%s]", GetId(), m_socket, errno, strerror(errno) );
}
我换个姿势在试试看 |
|