Socket接收数据怎么清空缓存区

苏醒的冰块_
2013-10-10 · TA获得超过4953个赞
知道小有建树答主
回答量:1018
采纳率:50%
帮助的人:834万
展开全部
通过Socket发送接收消息遇到个问题 C# code Socket newSocket = socket.Accept(); newSocket.Receive(messages); 获取消息没问题 但是总有缓存区无法清空的问题 比如说我先发一句:"我是中国人" 服务端能正确接收到这句消息:"我是中国人" 这边再发送一个字:"你" 理想状态下服务端应该显示一个字:"你" 但是实际上由于缓存区尚未清空的缘故变成了:"你是中国人" 只有当消息长度大于缓存区消息时旧消息才能被完全覆盖:"我不是中国人" 服务端这时能正确的显示:"我不是中国人" ========================================================= 发送消息这边我测试了下 发送出去的消息本身没有问题 C# code socket.Send(byteMessage); socket.Shutdown(SocketShutdown.Both); socket.Close(); 但是到了接收方收到消息就出问题了。我想应该是缓冲区问题 望各位大大解惑------解决方案-------------------------------------------------------- 这是你数组的问题 跟Socket缓冲没关系
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式