zoukankan      html  css  js  c++  java
  • Netty Bootstrap 启动类

    Bootstrap启动类层次结构:

     为什么引导类是 Cloneable 的 ?
    你有时可能会需要创建多个具有类似配置或者完全相同配置的Channel。为了支持这种模式而又不 需要为每个Channel都创建并配置一个新的引导类实例,AbstractBootstrap被标记为了 Cloneable 。在一个已经配置完成的引导类实例上调用clone()方法将返回另一个可以立即使用的引
    导类实例。 注意,这种方式只会创建引导类实例的EventLoopGroup的一个浅拷贝,所以,后者将在所有克隆的Channel实例之间共享。这是可以接受的,因为通常这些克隆的Channel的生命周期都很短暂,一 个典型的场景是——创建一个Channel以进行一次HTTP请求。

    AbstractBootstrap类的完整声明

    //B这种写法是为了支持链式编程
    public abstract class AbstractBootstrap<B extends AbstractBootstrap<B, C>, C extends Channel>

    ServerBootstrap

    handler()方法和 childHandler()方法之间的区别是:前者所 添加的 ChannelHandler 由接受子 Channel 的 ServerChannel 处理,而 childHandler()方法所添加的ChannelHandler将由已被接受的子Channel 处理,其代表一个绑定到远程节点的套接字

    AttributeKey

    在netty生命周期内获取范围之外的属性值

  • 相关阅读:
    mormot2封装tcp
    mormot.net.client.pas
    mormot.net.server.pas
    delphi working with big data databases in Cassandra, Couchbase and MongoDB
    Grijjy.ProtocolBuffers.pas
    Grijjy.Bson.Serialization.pas
    GrijjyFoundation开源框架
    Unidac内存表使用
    传统关系型数据库正在完成华丽的蜕变
    使用arthas 分析java 应用的一个流程总结
  • 原文地址:https://www.cnblogs.com/fubinhnust/p/11940512.html
Copyright © 2011-2022 走看看