06、Netty源码分析:NioEventLoop.executor

目录

    • DefaultThreadFactory
  • ThreadPerTaskExecutor
  • ThreadExecutorMap.apply

NioEventLoop的线程池参数executor创建如下

*

在开始分析ThreadExecutorMap.apply方法前先弄明白从NioEventLoopGroup传进来的executor是什么。
*

NioEventLoopGroupexecutor类型为ThreadPerTaskExecutor,也就是每一个task配一条线程。

接下来我们分三小步分析NioEventLoop.executor的创建过程:

1、 DefaultThreadFactory;
2、 ThreadPerTaskExecutor;
3、 ThreadExecutorMap.apply;

DefaultThreadFactory

DefaultThreadFactory用来创建线程,其构造过程如下
*

DefaultThreadFactory创建线程的方法newThread如下:
*

ThreadPerTaskExecutor

*

ThreadExecutorMap.apply

*

至此,NioEventLoop.executor参数创建完毕,当调用其execute方法执行任务时其本质是给其开启一个新的线程执行该任务,整个过程如下:
*

版权声明:本文不是「本站」原创文章,版权归原作者所有 | 原文地址: