关于接收帧头部信息接收无法理解

来源:9-16 消息分片设计与实现-接收调度-2

普通人love

2018-12-10

public static AbsReceiveFrame createInstance(IoArgs args) {
byte[] buffer = new byte[Frame.FRAME_HEADER_LENGTH];
args.writeTo(buffer, 0);
byte type = buffer[2];
switch (type) {
case Frame.TYPE_COMMAND_SEND_CANCEL:
return new CancelReceiveFrame(buffer);
case Frame.TYPE_PACKET_HEADER:
return new ReceiveHeaderFrame(buffer);
case Frame.TYPE_PACKET_ENTITY:
return new ReceiveEntityFrame(buffer);
default:
throw new UnsupportedOperationException(“Unsupported frame type:” + type);
}
}

这里如果每接收到一个ioargs 前6个字节都会包含针头信息吗?咋么理解?

写回答

1回答

Qiujuer

2018-12-12

不是每次收到ioargs头六个为基础信息。

而是当前帧没有时,需要解析新的帧的时候,此时头6个为帧头信息。

这是约定,类似于规则;是咱们定的。发送方按这样来发送,接收方自然按这样来解析。

2
1
普通人love
非常感谢!
2018-12-12
共1条回复

Socket网络编程进阶与实战 系统掌握Socket核心技术

理论+实践,系统且深入掌握Socket核心技术,从容应对各种Socket应用场景的不二之选

2316 学习 · 476 问题

查看课程