![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
netty源码
个人netty源码学习
Resee_Z
这个作者很懒,什么都没留下…
展开
-
第五节 netty源码分析-ChannelPipeline的addLast方法解析
一、概述在第四节中,分析了ServerBootstrap的bind()方法,主要分析了initAndRegister方法,这个方法调用的层次很深,还有几个主要的地方没有讲到,其中在initAndRegister()调用的ServerBootstrap.init()方法里面会用pipeline.addlast()方法。前面分析过new NioServerSocketChannel是默认创建DefaultChannelPipeline。所以就看io.netty.channel.DefaultChannelPi原创 2020-06-05 15:05:05 · 3500 阅读 · 0 评论 -
第四节 netty源码分析-ServerBootstrap的bind方法解析
一、概述在第二、三节中,分析了NioEventLoopGroup 的构造方法,里面会生成JDK的selector,和NioEventLoop数组。ServerBootstrap 是服务端启动辅助类,里面会涉及到ServerSocketChannel的事件监听,Handler的初始化等等,这一切的入口都是有bind()方法完成的。二、ServerBootstrap的使用 //服务端启动类,通过这个可以设置一系列的参数 ServerBootstrap serverBootstrap = n原创 2020-06-04 11:45:51 · 429 阅读 · 0 评论 -
第三节 netty源码分析之NioEventLoopGroup的 newChild()方法分析
一、概述在第二节中,分析了NioEventLoopGroup 的构造方法,会调用到父类MultithreadEventExecutorGroup的构造方法,里面有一个很重要的方法children[i] = newChild(executor, args),这个方法被NioEventLoopGroup重写了。这一节就分析一下newChild做了什么。二、NioEventLoopGroup的newChild方法 protected EventLoop newChild(Executor executo原创 2020-05-26 09:52:36 · 282 阅读 · 0 评论 -
第二节 netty源码分析之NioEventLoopGroup的构造函数分析
一、概述上一节中,讲了netty的基本应用。这一节主要是根据上一节的应用代码一行行的进行netty的源码分析。上一节的应用代码的main函数里面的第一行是new NioEventLoopGroup(1),下面就分析一下NioEventLoopGroup 的构造方法。二、NioEventLoopGroup从类的名字翻译出来 Nio事件轮训组。讲道理的话,它跟线程组是一个意思,都是有一组线程在做同样的申请,就是轮训Channel的IO事件。先看NioEventLoopGroup 的构造方法。publi原创 2020-05-20 09:20:27 · 295 阅读 · 0 评论 -
第一节 netty源码分析之简单应用
一、背景最近在看netty相关的源码,就想整理一下,加深一下印象。Netty 是一个 网络编程框架,对Java socket通信编码做了很多的抽象封装,开发人员使用起来非常简单。二、netty的简单应用服务端源码public class DemoServer { public static void main(String[] args) throws InterruptedException { //创建 boss线程,用来监听客户端的链接,一般线程数为1,原创 2020-05-17 00:23:50 · 163 阅读 · 0 评论