zoukankan      html  css  js  c++  java
  • netty关键字

    netty

      生成NioEventLoopGroup两个实例:bossGroup接收客户端传过来的请求,workerGroup处理后续操作

      bootstrap为netty程序启动添加组件

      nioserversocketchannel管理serversocketchannel实例

      channelhander:设置业务职责链,通过多个channelhander串联而成(业务处理

    自定义一个类 HttpServerInitializer 继承 ChannelInitializer 并实现其中的 initChannel方法

    ChannelPipeline pipeline = sc.pipeline();
    ChannelPipeline:新的连接被接受后创建的channel分配处

    buffer

      本质读写的内存,三个属性:capacity、position和limit

      capacity:容器大小

      position:读写的起始位置

      limit:能用的空间大小

      buffer分配:allocate方法分配初始值

      写数据到buffer的两种方式

      1、int bytes = channel.read(buf);从channel中的数据读取到buf中

      2、buf.put(byte);将数据通过put方法写入到buf

      读数据

      1、int bytes = channel.write(buf); 将buffer中的数据读取到channel

      2、byte bt = buf.get() 冲buf中读取一个byte

      读写模式的切换

      flip方法:调用flip方法后写模式切换成读模式,position=0,limit为原来的position

      rewind:Buffer.rewind()吧position=0,limit不变

      clear:position=0 limit=capacity但是buff并未清

      compact:将所有未读数据拷贝到起始处,position设置成未读元素的后边,limit=capacity

    selector(多路复用器)

    selector,channel相互配合使用。channel注册在selector上

    selector监听channel四种状态

    connect:某个客户端连接成功

    accept:准备好进行连接

    read:可读

    write:可写

      

    ------------恢复内容结束------------

  • 相关阅读:
    Visual C#动态生成控件
    (转)GridView 72般绝技
    ASP.NET给DataGrid,Repeater等添加全选批量删除等功能(转)
    JS操作字符串
    在IE中调试客户端脚
    一组很棒的button样式 (转)
    c#实现随机字符串(不包含数字)
    1996年4月全国计算机等级考试二级C语言笔试试题
    ASP.NET 2.0站点登录、导航与权限管理 转
    1996年9月全国计算机等级考试二级C语言笔试试题
  • 原文地址:https://www.cnblogs.com/tflike/p/13748344.html
Copyright © 2011-2022 走看看