- 博客(5)
- 收藏
- 关注
原创 Netty源码分析-Pipeline
pipeline可以看作是一个拦截流经Channel的入站和出站事件的ChannelHandler实例链。前面分析的NioServerSocketChannel与NioSocketChannel在创建时都会创建自己的pipeline在AbstractChannel中。 protected AbstractChannel(Channel parent) { this.par...
2018-12-28 11:06:01 615
原创 Netty源码解析-客户端连接
Netty版本4.1.22前面在分析NioEventLoop,重点在run方法,将其分为三部分来讲解:select,processSelectedKeys,runAllTasks。在第二部分里实际处理SelectionKey的操作processSelectedKey并没有分析,这篇文章讲连接,其切入点就在该方法。在第一篇文章分析服务端启动时,ServerBootStrap.bind创建了Nio...
2018-12-28 11:05:45 264
原创 Netty源码解析-NioEventLoop(二)
Netty源码4.1.22继前一篇,下面该分析processSelectedKeys()processSelectedKeys()处理IO事件 private void processSelectedKeys() { if (selectedKeys != null) { processSelectedKeysOptimized(); ...
2018-12-17 20:50:29 220
原创 Netty源码解析-NioEventLoop
一:NioEventLoop的创建NioEventLoop是由NioEventLoopGroup管理,所以创建操作要去NioEventLoopGroup找,如客户端代码中会先创建NioEventLoopGroup对象,从其构造函数入手,如你调用其无参构造器,一步步往下最终来到 public NioEventLoopGroup(int nThreads, Executor executor...
2018-12-17 20:50:10 513
原创 Netty源码解析一服务端启动
Netty的版本是4.1.22我们从ServerBootstrap的bind()方法开始跟踪Netty服务端的启动过程。大致分为以下四步:创建服务器Channel初始化服务器channel注册selector端口绑定一:创建服务器ChannelAbstractBootStrap public ChannelFuture bind(String inetHost, int ...
2018-12-12 21:46:57 262
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人