Netty Boss线程是为什么都是写1
先来看看常见的中间件、框架的使用方式。
中间件使用
Dubbo中的使用方法:NettyServer#doOpen
bossGroup = new NioEventLoopGroup(1, new DefaultThreadFactory("NettyServerBoss", true));
RxServer 的使用方法
serverBootstrap.group(RxNetty.getRxEventLoopProvider().globalServerParentEventLoop(true),
RxNetty.getRxEventLoopProvider().globalServerEventLoop(true));
public static RxEventLoopProvider getRxEventLoopProvider() {
return rxEventLoopProvider;
}
private static volatile RxEventLoopProvider rxEventLoopProvider =
new SingleNioLoopProvider(1, Runtime.getRuntime().availableProcessors());
看一下对应的实现 SingleNioLoopProvider
public SingleNioLoopProvider() {
this(Runtime.getRuntime().availableProcessors());
}
public SingleNioLoopProvider(int threadCount) {
eventLoop = new SharedNioEventLoopGroup(threadCount);
parentEventLoop = eventLoop;
parentEventLoopCount = childEventLoopCount = threadCount;
nativeEventLoop = new AtomicReference<EpollEventLoopGroup>();
nativeParentEventLoop = nativeEventLoop;
}
public SingleNioLoopProvider(int parentEventLoopCount, int childEventLoopCount) {
this.