`
lixjluck
  • 浏览: 101882 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Buffer的几个属性和方法速记

 
阅读更多

 

java.nio.Buffer 

 

属性

 

mark  
position
limit 一般情况下limit==catacity
capacity 此属性一经设置,就不会改变
remaing limit-position
address  

 

查询类方法

 

remaining  limit - position; 
hasRemaining limit < position;
 

 

改变类方法

 

mark mark=position;
reset position=mark;
clear

position=0;

limit=capacity;

mark=-1;

flip

limit=position;

position=0;

mark=-1;

rewind

position=0;

mark=-1;

limit()

limit=newLimit;

 

if (position > limit) position = limit;

if (mark > limit) mark = -1;

 

position()

position = newPosition;

 

if (mark > position) mark = -1;

 

System.arraycopy(hb, ix(position()), hb, ix(0), remaining());

 

position(remaining());

limit(capacity());

 

compact
slice

new HeapIntBuffer(hb,

-1,

0,

this.remaining(),

this.remaining(),

this.position() + offset);

 

  1. 共享底层存储byte[]
  2. mark=-1;
  3. position=0;
  4. limit=remaining;
  5. capacity=remaing;
  6. offset = offset+position;

 

 

 

duplicate

 new HeapByteBuffer(hb,

 

this.markValue(),

this.position(),

this.limit(),

this.capacity(),

offset);

 

  1. 共享底层存储byte[]
  2. mark=mark;
  3. position=position;
  4. limit=limit;
  5. capacity=capacity;
  6. offset = offset;

 

 

 

分享到:
评论

相关推荐

    C语言头文件 BUFFER

    C语言头文件 BUFFERC语言头文件 BUFFERC语言头文件 BUFFERC语言头文件 BUFFERC语言头文件 BUFFERC语言头文件 BUFFERC语言头文件 BUFFERC语言头文件 BUFFERC语言头文件 BUFFERC语言头文件 BUFFERC语言头文件 BUFFERC...

    多次在一个buffer中写入数据的方法——源码

    非常简单的源码,实现在一个buffer中多次写入数据。而不会覆盖。

    一个c++buffer的设计和实现

    5、线程使用完一个group后可以在使用其他的group,且不限在相同的原子buffer。 可能的问题在于,多次申请的问题,经过测试基本可以用。 方法2: 1、使用默认缓存5M 2、默认线程使用的内存为128K,即最多默认...

    buffer应用缓冲区

    buffer应用缓冲区 socket应用层

    Buffer缓冲和页面置换

    Buffer缓冲和页面置换Buffer缓冲和页面置换

    OpenGLES demo - 10. DrawElements, Vertex Buffer和Index Buffer

    个人博客中讲OpenGLES入门课程的第10章,关于drawElements和vertex buffer以及index buffer的代码

    环形buffer无锁一线程写一线程读

    可以设定buffer的初始块及数量,初始块是固定大小的,当需要扩环时会动态创建块即不像其它的库块满了就写失败了,当释放时会将动态创建的块还给系统,初始块还给自己的内存池,而且支持异步读写buffer,和asio配合...

    Oracle Buffer和Cache的区别

    Oracle Buffer和Cache的区别 buffer与cache操作的对象就不一样。 buffer(缓冲)是为了提高内存和硬盘(或其他I/0设备)之间的数据交换的速度而设计的。 cache(缓存)是为了提高cpu和内存之间的数据交换速度而设计...

    Google_Protocol_Buffer_的使用和原理

    Google_Protocol_Buffer_的使用和原理

    netty-buffer-4.1.68.Final-API文档-中文版.zip

    赠送jar包:netty-buffer-4.1.68.Final.jar; 赠送原API文档:netty-buffer-4.1.68.Final-javadoc.jar; 赠送源代码:netty-buffer-4.1....人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。

    Buffer.zip_buffer

    vc读写操作的一个BUffer,提取自gh0st中的文件,不过改成跨平台的了

    Lab1-Buffer OverFlow

    Lab1-Buffer OverFlow,包含代码、实验说明和论文。

    circularbuffer_zip_circularbuffer_源码

    circular buffer using C#

    netty-buffer-4.1.73.Final-API文档-中文版.zip

    赠送jar包:netty-buffer-4.1.73.Final.jar; 赠送原API文档:netty-buffer-4.1.73.Final-javadoc.jar; 赠送源代码:netty-buffer-4.1....人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。

    bgr buffer与bgra buffer

    保存的两块rgb和rgba buffer数据,用于大家使用和研究,可以通过opencv加载图片保存,或者硬解码保存,或者libjpeg保存,我是通过deepstream直接保存的

    ZBuffer扫描线

    ZBuffer 扫描线 ZBuffer 扫描线 ZBuffer 扫描线 ZBuffer 扫描线 ZBuffer 扫描线 ZBuffer 扫描线 ZBuffer 扫描线 ZBuffer 扫描线 ZBuffer 扫描线 ZBuffer 扫描线 ZBuffer 扫描线 ZBuffer 扫描线

    netty-buffer-4.1.11.Final-API文档-中文版.zip

    赠送jar包:netty-buffer-4.1.11.Final.jar; 赠送原API文档:netty-buffer-4.1.11.Final-javadoc.jar; 赠送源代码:netty-buffer-...人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。

    RingBuffer 循环缓存 亲测可用 V2 修改一处

    1.每个实例支持读写双线程。 2.数据一致。 3.ringbuffer为空时,读取时候等待。直到有数据写入,再继续读取。 4.当写入数据的长度大于ringbuffer的可写入长度时,多余的数据将会丢弃。所以写入数据前,先判断ring...

    netty-buffer-4.1.27.Final-API文档-中文版.zip

    赠送jar包:netty-buffer-4.1.27.Final.jar; 赠送原API文档:netty-buffer-4.1.27.Final-javadoc.jar; 赠送源代码:netty-buffer-...人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。

    ArcMap中Buffer的创建及使用

    介绍ArcMap中Buffer的创建及使用,并且附图说明。

Global site tag (gtag.js) - Google Analytics