0
@Override
public void messageReceived(NextFilter nextFilter, IoSession session, Object message) throws Exception
{
}

我需要将消息作为字节流读取。但它不保证收到完整的消息。我需要丢弃包含少于 16 个字节的消息。当整个字节长度达到 16 时,我需要解码并使用它们。无论如何,如果它用 17 个字节调用,那么我只需要处理 16 个并将另一个留给下一个周期。reset() 和 mark() 是否可以帮助我解决这个问题。有什么办法可以让米娜缓冲一下。还是我必须使用自己的缓冲区?

4

1 回答 1

0
  1. 小于16,可以设置IoBuffer的位置丢弃缓冲区。
  2. 等于16,是真的,所以你可以解码它。
  3. 大于 16,您可以剪切前 16 个字节进行解码,并将剩余字节保存到当前会话中
于 2013-10-29T09:11:24.613 回答