兄弟,问大家一个问题:A客户端,B为服务器端,客户端A首先连接上服务器端B,然后服务器端B给客户端A发送播放视频的命令(内部定义的命令,大家不需要理会),然后客户端A就开始播放视频了,这时再把客户端A关闭(人为的), 接着服务器端B给客户端A发送暂停的命令(内部定义的命令,不需要理会),这时服务器端居然能够发送成功,想问一下大家这是什么原因
部分代码如下:
NETMSG netMsg;

memset(&netMsg,0,sizeof(NETMSG));
netMsg.nNetMSG = SVR_SEND; int len=strlen(szNetMsg);
memcpy(netMsg.chPara,szNetMsg,len);

int result=0;
CListenSocket* pListenSocket=(CListenSocket*)pScoket;
if (pListenSocket!=0)
{
if (SOCKET_ERROR==pListenSocket->Send(&netMsg,sizeof(NETMSG)))
{
list<CLIENT_OBJ *>::iterator it=gClientObj.begin();
for (;it!=gClientObj.end();++it)
{
if (pListenSocket ==&(*it)->Socket)
{
delete pListenSocket;
gClientObj.erase(it);
break;
}
}
pScoket=0;
pListenSocket=0;
}
result=1;
}
return result;
}