0

我正在尝试编写自己的 Protobuf 帧解码器,并以此为基础:

https://github.com/netty/netty/blob/master/codec/src/main/java/io/netty/handler/codec/protobuf/ProtobufVarint32FrameDecoder.java

我只是想知道为什么它会创建new byte[5];

它不只需要读取第一个字节即可获得长度。为什么需要for循环?

4

1 回答 1

1

因为长度表示为可变长度字段,如此所述。

于 2012-06-15T01:44:04.007 回答