Netty源码解析(2):服务端启动
2021-03-27 04:26
标签:channel auth ted netty ios rri sel node cto 1、创建服务端channel bind() initAndRegister() channelFactory.newChannel() 其中channelFactory通过反射创建channel。channelFactory通过NioServerSocketChannel创建一个channelFactory。 NioServerSocketChannel 通过构造方法时通过 newSocket() NioServerSocketChannelConfig() AbstractionNioChannel() configureBlocking(false) 2、初始化channel 3、注册selector 4、绑定端口 Netty源码解析(2):服务端启动 标签:channel auth ted netty ios rri sel node cto 原文地址:https://www.cnblogs.com/xiaofeiyang/p/12634545.htmlpackage com.xiaofeiyang;
import io.netty.bootstrap.ServerBootstrap;
import io.netty.channel.ChannelFuture;
import io.netty.channel.ChannelInitializer;
import io.netty.channel.ChannelOption;
import io.netty.channel.EventLoopGroup;
import io.netty.channel.nio.NioEventLoopGroup;
import io.netty.channel.socket.SocketChannel;
import io.netty.channel.socket.nio.NioServerSocketChannel;
import io.netty.util.AttributeKey;
/**
* @author: yangchun
* @description:
* @date: Created in 2020-04-02 12:23
*/
public final class NioServer {
public static void main(String[] args) throws Exception {
EventLoopGroup bossGroup = new NioEventLoopGroup(1);
EventLoopGroup workerGroup = new NioEventLoopGroup();
try {
ServerBootstrap b = new ServerBootstrap();
b.group(bossGroup, workerGroup)
.channel(NioServerSocketChannel.class)
.childOption(ChannelOption.TCP_NODELAY, true)
.childAttr(AttributeKey.newInstance("childAttr"), "childAttrValue")
//.handler(new ServerHandler())
.childHandler(new ChannelInitializer
上一篇:纯css实现图片或者页面变灰色
文章标题:Netty源码解析(2):服务端启动
文章链接:http://soscw.com/index.php/essay/68418.html