从套接字递归处理数据
Recursive processing of data from socket?
在使用boost asio read_some()处理来自服务器的数据时,我遇到了一个问题。
数据格式为:83,数据长度,数据
问题:
我以块的形式从服务器接收数据包,其中数据包可以具有单个数据或多个数据。此外,在某些情况下,我可以接收 2-3 个数据包中的单个数据。虽然我已经为相同的迭代逻辑编写了迭代逻辑,但我想知道 some1 是否可以为此类问题建议递归逻辑。我对递归不是很有信心,因此将不胜感激。
另外,另一个问题是,如果使用 boost asio read_some(), 1500 字节读取数据,则最大长度是多少?
根据评论,我认为递归在这里不是一个好的选择。我必须坚持我的迭代方法。感谢每个人1的及时回复/建议
将
事物分成 2 个缓冲区,一个用于原始数据,一个用于完整数据包的队列。
有些东西链接这个:
while(true) {
receive data from socket
append data to sendBuffer
while( sendbuffer contains a complete packet) {
move packet to packetQueue();
removePacket from sendbuffer;
}
}
相关文章:
- 使用流处理接收到的数据
- 处理小于cpu数据总线的数据类型.(c++转换为机器代码)
- 在运行时处理类型擦除的数据-如何不重新发明轮子
- 我可以使用哪种数据结构来处理这种方式
- OpenCV(C++)处理来自JavaScript / Web Assembly的图像数据
- 分析和数据处理 使用点云库的 las 文件
- 使用 seekp() 和 tellg() 进行数据处理
- 高速罐数据处理而无需使用堆内存
- C++中游戏的动态数据处理
- C++ istream 运算符>>不良数据处理
- 以下数据处理任务是否适合GPU计算
- 自动决定要用于数据处理的类
- 外部进程与线程和数据处理
- 为大型本地数据处理扩展堆栈的大小是个好主意吗
- MPI大数据处理
- Lua vs嵌入式Lisp和潜在的其他候选.用于基于集合的数据处理
- 大数据处理技术与书籍
- Win32异步客户端传入数据处理
- c++ Win32数据处理线程
- 关于高性能流式数据处理的问题