C++socket程序如何实现持续接收数据

2025-04-29 04:22:36
推荐回答(1个)
回答1:

ZeroMemory(buf, BUF_SZIE);

while(true)
{
        retVal = recv(sClient, buf, BUF_SZIE, 0);
if (SOCKET_ERROR == retVal)
{
printf("send failed!\n");
}
else
{
        把buf中的有效数据保存一份到其他地方,比如一个List 什么的,一直往里面添加,处理的线程处理了数据后,把处理过的数据从List中删除就可以了
}
}

closesocket(sClient); 
WSACleanup();


为防止卡死主线程,你要创建新线程来执行