winsock c++中recv函数的奇怪行为
Posted
技术标签:
【中文标题】winsock c++中recv函数的奇怪行为【英文标题】:Strange behavoir of recv function in winsock vc++ 【发布时间】:2011-12-08 07:29:59 【问题描述】:我正在使用异步套接字。
服务器不断向客户端发送MSG。客户端会收到所有的 MSG,但有时会同时收到两三个消息。
【问题讨论】:
【参考方案1】:这是绝对正常的。此外,不能保证您每次都阅读整数个“消息”。我的意思是,你可能会阅读 1.5 条消息(一个半),然后下一次阅读 2.7 条(剩下的一半,另外两条,下一个),以此类推。
您必须实现将流拆分为消息的逻辑。
【讨论】:
以上是关于winsock c++中recv函数的奇怪行为的主要内容,如果未能解决你的问题,请参考以下文章
在 C++ 中的 Winsock 中发送 HTTP GET 请求后,Recv() 函数挂起
当调用winsock 中的recv 函数并且没有收到所有数据时会发生啥?