2020-01-01 17:49发布
BloathX 发表于 2014-11-20 19:09 1:没有这一说,你的程序没处理好异常吧 2:在断开后,你的socket状态就改变了,从连接到了初始化,你再发 ...
最多设置5个标签!
2:在断开后,你的socket状态就改变了,从连接到了初始化,你再发一条连接命令就行了
第一条 是我代码的问题 很抱歉各位 第二条 服务端断开了以后,端口状态发生变化了,但是重新connect 连接不上
{
case SOCK_INIT:
connect(SOCK_LOC , pc_ip ,6001);/*在TCP模式下向服务器发送连接请求*/
break;
case SOCK_ESTABLISHED:
if( getSn_IR(SOCK_LOC) & Sn_IR_CON )
{
setSn_IR(SOCK_LOC, Sn_IR_CON);/*Sn_IR的第0位置1*/
}
len = getSn_RX_RSR(SOCK_LOC);/*len为已接收数据的大小*/
break;
case SOCK_CLOSE_WAIT:
disconnect(SOCK_LOC)
break;
case SOCK_CLOSING:/*socket关闭*/
close(SOCK_LOC) ;
break ;
case SOCK_CLOSED:/*socket关闭*/
socket(SOCK_LOC,Sn_MR_TCP,anyport++,0) ;
break;
default:
break;
}// end of switch
请问上面的处理流程对否 请大侠指导?另外配置好 SO_KEEPALIVEAUTO 对tcp服务端断开这种情况,是否有作用?
一周热门 更多>