nio

1、缓冲区创建

  • 管理方式,经过allocate()获取缓冲区缓存

    2、缓冲区存取数据的两个核心方法:

  • put() : 存入数据到缓冲区中
  • get() : 获取缓冲区中的数据3d

    3、缓冲区中的四个核心属性:

  1. capactiy: 容量,表示缓冲区中最大存储数据的容量。一段声明不能改变。
  2. limit: 界限,表示缓冲区中能够操做数据的大小。(limit 后的数据不能进行读写)
  3. position: 位置,表示缓冲区中正在操做数据的位置。
  4. mark:标记,表示当前position的位置。能够经过reset() 恢复到mark的位置。
  • mark <= position <= limit <= capacity

通道(channel) :用于源节点与目标节点的连接。负责缓冲区中数据的传输。Channel不存储数据,须要与缓冲区配合传输数据

  • 通道的实现类
  1. FileChannel
  2. SocketChannel
  3. ServerSocketChannel
  4. DatagramChannel

直接缓存区操做文件code

分算和汇集

blog

相关文章
相关标签/搜索