Netty 源码走读
ChannelHandlerInvokerUtil
ChannelHandlerInvokerUtil 是一个方法调用辅助类,主要是通过 ChannelHandlerContext 参数来调用。
1 public static void invokeChannelReadNow(final ChannelHandlerContext ctx, final Object msg) { 2 try { 3 ((AbstractChannelHandlerContext) ctx).invokedThisChannelRead = true; 4 ctx.handler().channelRead(ctx, msg); 5 } catch (Throwable t) { 6 notifyHandlerException(ctx, t); 7 } 8 }
看上面源码,先将此invokedThisChannelRead 标记置为true,然后调用该ChannelHandler的channelRead方法。
为什么对方法调用再封装一次?我觉得可以增加代码可读性,使上层调用更加清晰,想到我们业务代码调用service,总要先new 一个 Vo,再调用,最后取得结果,也是可以封装一下的。

浙公网安备 33010602011771号