c++ - Socket 通信中如何清除接收区缓存?

 尤天asoka 发布于 2022-11-03 17:36

大家好

我是初次使用C++ Socket编程,在网上找到了很多这方面的样例
例如 http://www.cnblogs.com/Sniper-quay/archive/2011/06/22/2086636.html
现在有一个问题是,它需要每次关闭套接字
如果不关闭的话,我会出现以下问题

我建立了一个应答系统,客户端向服务器端发送触发指令:Trigger On
服务器端响应一个处理结果:Process 0001 OK
然后客户端调用receive函数接收到处理结果:Process 0001 OK

问题是,服务器端可以独立处理,但是它每次处理完都会向客户端发送信息,不管客户端是否有触发指令或者接收

例如:服务器端自行处理5次,它会自动向客户端发送五次处理结果

    Process 0020 OK
    Process 0021 OK
    Process 0022 OK
    Process 0023 OK
    Process 0024 NG
    

此时客户端发送触发指令:Trigger On
调用接收函数receive
客户端接收到的数据为:

    Process 0020 OK
    Process 0021 OK
    Process 0022 OK
    Process 0023 OK
    Process 0024 NG
    Process 0025 NG   
    

我的问题是,在客户端发送Trigger On 触发指令之前,我如何清除掉接收区缓存

1 个回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有