由于程序中的一个任务处理较耗时,需要采样socket的接收缓冲区的大小
来决定是否跳出当前任务去读取socket中的数据

Linux C语言, 如何获取socket接收缓冲区中当前数据的大小
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- 高大山 2016-08-24 04:42关注
read的返回值中可以获得大小,read结束之前你是没法知道对方到底发多少给你的。通常的做法,我们会在通讯的报文前加上一些控制信息,比如前4个byte存放数据大小(是否包含这4个byte自己定义)、数据是否分片、每片大小、MAC、控制字符(防止其他程序误发)等等,
你可以参考一下。本回答被题主选为最佳回答 , 对您是否有帮助呢?解决评论 打赏 举报无用 3