C/S通信中
服务端 关闭连接后
客户端代码
recv接收数据会返回1054错误(远程主机关闭连接)recv函数是在新建线程中调用的
我想在recv返回错误之后 在重新连接服务端 该怎么回去啊 调用goto函数 感觉不好
因为主线程有主动连接代码
while(1)
{
.....
connect()
}
服务端 关闭连接后
客户端代码
recv接收数据会返回1054错误(远程主机关闭连接)recv函数是在新建线程中调用的
我想在recv返回错误之后 在重新连接服务端 该怎么回去啊 调用goto函数 感觉不好
因为主线程有主动连接代码
while(1)
{
.....
connect()
}
主需要满足recv返回值等于1054就调用connect
{
if(GetlastError()== 10054)
{
ShutDown();
connect();
}
}
并且主线程有主动连接的代码
我在recv中在重新写个主动连接的代码 老感觉有点重复了
又不想用goto
bool bConnected = false;
while(1)
{
if(!bConnected)
{
if(connect())
bConnected = true;
}
... if(GetlastError()== 10054)
{
bConnected = false;
}
}