将从套接字读取的数据存储到另一个线程读取的最有效方法是什么?

本文关键字:读取 有效 方法 线程 是什么 套接字 数据 存储 另一个 | 更新日期: 2023-09-27 18:10:11

所以我有一个类使用高速I/O完成端口套接字。我正在接收的数据的协议有一个17字节的报头,和一个可变的数据有效载荷,这是在报头中指定的,所以,而不是单独调用ReceiveAsync为每个报头和有效载荷,我只是抓取一个1024字节的缓冲区块,而不是节省cpu使用。

然而,我不确定存储这些数据的最佳方式是什么?它必须是有序的,我想要一个单独的线程来做处理,而不会有任何线程或性能问题。

我应该看一个记忆流或类似的东西吗?

任何想法?

将从套接字读取的数据存储到另一个线程读取的最有效方法是什么?

不要存储。不要使用另一个线程来读取它。我将使用相同的线程将其反序列化为更可用的东西。然后在另一个线程中排队,让IOCP线程继续处理。

不要存储。让其他线程在需要的时候读取它