int blindstatus=bind(sockSrv,(SOCKADDR*)&addrSrv,sizeof(SOCKADDR));
listen(sockSrv,64);
WSAAsyncSelect(sockSrv,this->m_hWnd,WM_SOCKET,FD_ACCEPT|FD_READ);
异步SOCKET事件WM_SOCKET与OnSocket函数绑定
void CBtConnDlg::OnSocket(WPARAM wParam, LPARAM lParam)
{
switch(lParam)
{
case FD_ACCEPT:
{
int len=sizeof(addrSrv);
int sc=accept(sockSrv,(sockaddr*)&addrSrv,&len);
if(sc==INVALID_SOCKET)
{
//连接出错
return ;
}
break;
}
case FD_READ:
{
//wParam表示网络通信的套接字标示符
char buff[4096];
int recvSize=recv(wParam,buff,4096,0);
//其他一些列的操作
break;
}
}
}
结果我这边接收到的数据接收了2天左右都行的,第三天就一直无法接收到数据了,请问是什么情况,有高人知道吗??