一、Buffers
类结构
1.1 Buffer.class
这个是nio的东西但是也很重要,提出来单讲。
mark: mark = position;reset: position = mark ;读写位置记为标记位clear ;清零flip ;重读操作
一般用于数据的转运。比如
rewind; position=0重头开始读remain: limit - position 还剩多少字符
1.2 ByteBuffer
byteBuffer的数据结构,多了对真实array的映射。
1.2.1 HeapByteBuffer
堆内存buffer,如果提供数组就使用数组,不提供就直接new Byte[]
。这么就是堆内存。
HeapByteBufferR是可读的意思,速度会快,这里没有实现。
1.2.2 MappedByteBuffer
是映射的意思,映射到真实内存。fd 文件描述符
可以作为参数。