读书人

netty 源码分析之(2.2)Client启动连

发布时间: 2013-03-12 11:19:35 作者: rapoo

netty 源码分析之(二.2)Client启动连接

Pipeline就是这个Channel注册的管道,里面表示每一个Handler,是一种链式结构

SocketChannel就是NIO包中进行socket操作的通道

work的选择通过轮转的方式,Client端的bossExecuter主要是用来关注CONNECT事件的(这一部分的处理有很多重复的代码,在Netty4中统一了些)

?

?Worker

netty中真正干底层脏活累活的都是work类,他的结构如下:

netty 源码分析之(2.2)Client启动连接

WorkPool表示了一个缓冲池,这也限制了使用的线程数,下面是WorkPool的初始化代码

    ?

    连接过程

    下面看下channel注册到work(seelct)的代码,连接的时候是在内部的一个Boss类里处理的

    netty 源码分析之(2.2)Client启动连接

    所有的连接connect操作都被封装成一个RegisterTask对象,Boss类持有registerTask队列,在loop中不断的去进行select

      ?

读书人网 >互联网

热点推荐