关于handler和childhandler的区别。
handler是bossGroup的
childhandler是workGroup的
------------------
组件:
BootStrap和ServerBootstrap。
Future和ChannelFuture
channel
-------------------------------------------------------56-----------------------------------------------------------
selector可以管理多个channel。
--------------------------------------------------------------
channelhandler是在哪里的呢?
自定义的handler实际上是实现了handler接口的。
入栈的IO事件:在管道里面读
出栈IO:写
这个为什么可以处理出栈和入栈的操作?
---
---
handler是很庞大的。
-------57-------
上下文,这个ctx也就是channelhandlercontext是一个channelHandler一个,channelhandler是我们自定义被包裹为channelhandlerContext加入到channelPipleLine里面的。一个channel一个channelPipleLine。
比如这里就加了两个:
看下在双向链表里面放的是ChannelHandlerContext。
同理尾部:
ctx的真实类型:
链表的第一个其实是这个实例,然后是我们自定义的两个实例,TestServerInitializer也是一个Handler实例。
双向链表。
handler是非常庞大的。
------------------------------------------------------58-----------------------------------------------------------
梳理:略。
-------------------------------------------------------59-----------------------------------------------------------
ChannelHandlerContext解释:
debug:ctx此时这个handler就是红框。
因为是addLast所以next是没有的,但是有pre。
同时还关联了pipleline,通过pipleline拿到channnel。
api:
当前的handler。
------------------------
对于这个的解释:
连接放在队列里面等待的。
---------------------------
重点:
选择是1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 NioEventLoop。
方法:
-------------------------------------------------------60-----------------------------------------------------------