zoukankan      html  css  js  c++  java
  • netty数据缓冲区与nio缓冲区的区别

    nio中ByteBuffer和netty中的ByteBuf相比确实后者更加的好用:

    (1)ByteBuf可以在用户使用数据区空间不足的情况下以2的指数倍扩容,相比ByteBuffer的char数组是final修饰的,一旦需要扩容只能人为手动干预,并且只能重新申请数组并copy才可以。

    (2)ByteBuf有readIndex和writeIndex两个概念,从而把数据区分为3段,一段为已经都去过的可丢弃的数据区discardReadArea(从0位置到readIndex位置);一段为可读取的区域readArea(从readIndex位置到writeIndex位置);最后一段是可写的数据区writeArea(从writeIndex位置到capacity位置),相比ByteBuffer在数据区只有position和limit配合使用更加灵活。

    (3)netty的ByteBuf有三种容器,除了堆内存储,堆外存储以外。还添加了一种容器,这种容器可以将堆内存储,堆外存储合并在一起处理,消除底层差异。

  • 相关阅读:
    (5)html表单
    (4)html表格
    (3)HTML ”列表“、图片和超链接
    (1)html开头解说与案例演示
    学习web前端前感
    一、资源合并与压缩
    HTTP协议原理
    图解HTTP总结
    基于TypeScript从零重构axios
    元組
  • 原文地址:https://www.cnblogs.com/zzq-include/p/12090101.html
Copyright © 2011-2022 走看看