新增
新增内容
- 当有新的客户端加入时,服务器通知其他客户端
- 客户端升级为select模型,以便可以接受服务器的发送通知
服务器新增代码
- 在命令中新增一个
enum CMD
{
CMD_LOGIN;
CMD_LOGOUT;
CMD_GETINFO;
CMD_NEW_USER_JOIN;
CMD_RESULT;
};
struct NewUserJoin:public DataHeader
{
NewUserJoin()
{
dataLength = sizeof(NewUserJoin);
cmd = CMD_NEW_USER_JOIN;
soc = 0;
}
NewUserJoin(SOCKET s)
{
dataLength = sizeof(NewUserJoin);
cmd = CMD_NEW_USER_JOIN;
soc = s;
}
SOCKET soc;
};
- 在process函数中加入当有新客户端加入时,向现有客户端发送通知。
int Process(SOCKET _cSock)
{
if(FD_ISSET(_sock,&fdRead))
{
FD_CLR(_sock,&fdRead);
sockaddr_in clentAddr = {
};
int nAddrLen = sizeof(sockaddr_in);
SOCKET _cSock = INVAID_SOCKET