醋醋百科网

Good Luck To You!

GPS定位 JT808 / 视频监控 - JT1078 源码剖析(1)

JT 808 协议协议分析:

Netty 启动流程分析:

代码实现:

        int port = Integer.parseInt(this.configService.getJt808ServerPort());
        // bossGroup 线程组用于接收客户端的连接   nThreads = 0时,使用默认的线程数 DEFAULT_EVENT_LOOP_THREADS
        bossGroup = new NioEventLoopGroup(0, new DefaultThreadFactory("JT808ServerBossGroup"));
        // workerGroup线程用于处理每个连接的读写 nThreads = 0时,使用默认的线程数 DEFAULT_EVENT_LOOP_THREADS
        workerGroup = new NioEventLoopGroup(0, new DefaultThreadFactory("JT808ServerWorkerGroup"));
        try {
            ServerBootstrap b = new ServerBootstrap();
            b.group(bossGroup, workerGroup);
            b.channel(NioServerSocketChannel.class);
            // RCVBUF_ALLOCATOR 用于设置接收缓冲区内存分配器。
            // AdaptiveRecvByteBufAllocator  是一种自适应的接收字节缓冲区分配器。 默认值 64字节(1/16M), 2048字节(2M), 65536字节(64M)
            b.childOption(ChannelOption.RCVBUF_ALLOCATOR, new AdaptiveRecvByteBufAllocator(64, 2048, 65536));
            // Handler 为  ChannelInitializer<SocketChannel> 实例,有连接时执行 实例的 initChannel 方法
            b.childHandler(jt808ServerInitializer);
            // 服务器绑定端口监听
            future = b.bind(port).sync();
            future.channel().closeFuture().sync();
        } finally {
            bossGroup.shutdownGracefully();
            workerGroup.shutdownGracefully();
        }
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言