怎样关闭 socket server (客户端正连接时)
我写了一个基于TCP/IP的C/S程序,结果是如果只要还有一个已连接的客户端没有先关闭,服务器端退出时可以看到客户端SOCKET被关闭,但SERVER重启动时还是无法绑定到端口,原因是该端口已经使用!!!
(客户端未连接或客户端先断开时关闭SERVER一切正常)
我的服务器端的关闭方法是,先关闭所有已连接的sock,再关闭SOCKET SERVER:
for(i=0;i<_MAX_CONNECT;i++) {
if(sock_cli[i]!=-1) {
shutdown(sock_cli[i],SHUT_RDWR);
close(sock_cli[i]);
sock_cli[i]=-1;
}
}
shutdown(sock_serv,SHUT_RDWR);
close(sock_serv);
应该怎样正常关闭SOCKET SERVER 释放绑定的端口呢 ?