none
求思路。在进行socket 传输时,数据会不停的发,不停的收。那么服务端的接收缓存该如何设计 RRS feed

  • 问题

  • 如题,设计一个公共可复用的缓存区,每个客户端接收的数据都存放在里面,用完后归还。断开则空出,等等,这部分不是很清晰。求指教。
    2017年11月20日 13:51

答案

  • Hi,

    感谢你在MSDN论坛发帖。

    如果数据是实时发送,你可以做个环形buf,然后里面放个指针,通过移动指针的位置,来判断取走buf里面的东西,然后清空,在继续接收buf 。

    你可以参考STL里面的circular buffer 的设计。

    https://accu.org/index.php/journals/389

    http://www.boost.org/doc/libs/1_65_1/doc/html/circular_buffer.html

    如果你的问题解决了,请及时标记有用的回复作为答案,这样会帮助遇到相同问题的人。

    在开发中遇到问题,欢迎随时发帖,大家探讨 探讨

    Best Regards,

    Hart

    • 注意:此回复包含对第三方万维网站点的引用。 Microsoft提供此信息为您提供方便。 Microsoft不控制这些网站,并且没有测试在这些网站上发现的任何软件或信息; 因此,Microsoft不能对任何软件或信息的质量,安全性或适用性做任何声明。 使用互联网上发现的任何软件都存在固有的危险,Microsoft警告您,在从互联网检索任何软件之前,请确保您完全理解风险。


    Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.


    2017年11月21日 7:26
    版主