【发布时间】:2013-10-27 05:00:24
【问题描述】:
如果我有一个看起来像“|SIZE|TYPE|DATA”的 TCP 消息协议,我的读取缓冲区(实际上是我的数据流)是否会像这样(由于错误):
|SIZE|TYPE|DATA|SIZE|TYPE|部分数据|SIZE|TYPE|DATA
这会导致我从 3. 消息中读取字节到 2. 这会发生吗?如何检测这种情况?
编辑:对于“部分数据”,我的意思是该消息的其余部分将丢失并且永远不会收到。另一条完整的消息在该消息之后发送,并找到到达接收者的方式。但是,由于我的 2. 消息未满,我会将 3. 消息的一部分读入我的 2. 消息中。 :(
【问题讨论】: