阿里开源技术

Netty高级功能(四):Netty事件触发

2019-10-04  本文已影响0人  雪飘千里

1、 ChannelHandler中 channelRead VS channelReadComplete

channelRead 是只有解码成功(ByteToMessageDecoder),才会调用后续ChannelHandler的channelRead方法;

channelReadComplete方法属于透传调用,即无论是否有完整的消息被解码成功,只要读到消息,都会触发后续ChannelHandler的channelReadComplete方法调用;

所以,我们的业务都要在 ChannelHandler中 的channelRead方法中处理。

channelReadComplete方法的调用机制是,只要底层的SockerChannel读到了ByteBuf,就会触发一次调用,对于一个完整的业务消息,可能会多次调用。

2、心跳 userEventTriggered

上一篇下一篇

猜你喜欢

热点阅读