c++ - 在套接字上写多于读

标签 c++ c sockets tcp

有没有办法通过 IP 套接字对视频流进行采样?

我能否让服务器将固定大小的图像写入套接字,让客户端只从套接字读取最新的图像,并在必要时丢弃帧?

TCP 可以建模为一个队列,所以如果队列的长度由于写入的数量超过读取的数量而增长,就会出现问题,对吗?

最佳答案

我在 ubuntu 上从套接字读取时遇到了这种问题,其中 ubuntu 缓冲 UDP 消息。

最简单的修复方法是循环读取,直到套接字返回 0 字节,然后只处理上次成功读取的数据

在嵌入式系统上,大约 2 天后,将有多达 10 分钟的 GPS 数据排队。

在短循环中读入缓冲区,直到 recv() 返回 0 字节,然后使用上次成功读取的结果解决问题

我从来没有找到告诉 ubuntu 不要缓冲传入的 UDP 数据包的方法

关于c++ - 在套接字上写多于读,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29313074/

相关文章:

C++ if 语句顺序

c++ - ACE Reactor 在系统调用中断时退出

C++ 派生类无法访问 protected 成员,除非使用默认构造函数

c - 按位运算符比较错误

PHP - 将 SSL 添加到 TCP 套接字时出现意外行为

c++ - 如何仅在调用函数B之后才允许调用函数A?

mysql - 使用 C 访问数据库

c - 为什么 lex 不能识别我的正则表达式定义

c - 如何在 C linux 套接字中包含 IP 数据包?

用于播放通过套接字传输的 wav 文件的 iOS 库