《Netty》从零开始学netty源码(九)之NioEventLoopGroup.chooser

在链接: 《Netty》从零开始学netty(二)之NioEventLoopGroup中提到EventExecutorChooserEventExecutorChooser用于从children数组中选取出合适的NioEventLoop来执行任务,它的创建过程如下:

《Netty》从零开始学netty源码(九)之NioEventLoopGroup.chooser_第1张图片

Netty采用了工厂模式创建EventExecutorChooser的实例

创建EventExecutorChooser的工厂类

《Netty》从零开始学netty源码(九)之NioEventLoopGroup.chooser_第2张图片

DefaultEventExecutorChooserFactory采用了单例模式的懒汉模式,它只有一个实例,即INSTANCE。对外提供了newChooser方法用于创建EventExecutorChooser

EventExecutorChooser

《Netty》从零开始学netty源码(九)之NioEventLoopGroup.chooser_第3张图片

EventExecutorChooser的功能只有一个,那就是获取EventExecutor

《Netty》从零开始学netty源码(九)之NioEventLoopGroup.chooser_第4张图片

不管哪个实例都实现了循环的方式遍历executors数组,区别只是性能上的优化

你可能感兴趣的:(Netty,java,开发语言,netty)