socket server select模型值得注意的地方

1)多个客户端连接socket服务器,怎么区分是哪个客户端连接的,换句话说,socket 怎么和客户端的ip一一对应?

SOCKADDR_IN clientAddr;

 int socketLen = sizeof(SOCKADDR_IN);

m_pListenSocket->Accept(*pClient,(SOCKADDR*)&clientAddr, &socketLen);

 unsigned long m_lIP;

m_lIP = clientAddr.sin_addr.S_un.S_addr;short m_nPort;m_nPort= clientAddr.sin_port;

 

2)Select 模型的最大连接数默认为64,可以修改Winsock2.h进行修改;

 #ifndef FD_SETSIZE
#define FD_SETSIZE      64
#endif /* FD_SETSIZE */

 

在上面这段代码前面定义一个 #define FD_SETSIZE 1024 就可以将连接数改成1024了;

3)select 模型,服务器如何检测客户端socket是否关闭?

通过FD_CLOSE

你可能感兴趣的:(socket,server,服务器)