1.Netty接受请求过程源码剖析
1>.从之前的Netty启动过程源码剖析中,我们得知服务器最终注册了一个Accept事件等待客户端的连接
.我们也知道,NioServerSocketChannel将自己注册到了bossGroup单例线程池(reactor线程)上,也就是EventLoop
;
2>.先简单说下EventLoop的逻辑,EventLoop 的作用是一个死循环,而这个循环中做3件事情:
①.
有条件的等待Nio事件;
②.
处理Nio事件;
③.
处理消息队列中的任务;
3>.仍用前面的项目来分析: 入到NioEventLoop源码中后
,在private void processSelectedKey(SelectionKey k, AbstractNioChannel ch)方法开始调试,最终我们要分析到AbstractNioChannel的doBeginRead()方法,当到这个方法时,针对于这个客户端的连接就完成了,接下来就可以监听读事件了;
private void processSelectedKey(