庖丁解牛:NIO核心概念与机制详解 02 _ 缓冲区的细节实现

文章目录


Pre

庖丁解牛:NIO核心概念与机制详解 01


接下来我们来看下缓冲区内部细节

Overview

接下来将介绍 NIO 中两个重要的缓冲区组件:状态变量和访问方法 (accessor)

状态变量是"内部统计机制"的关键。每一个读/写操作都会改变缓冲区的状态。通过记录和跟踪这些变化,缓冲区就可能够内部地管理自己的资源。

在从通道读取数据时,数据被放入到缓冲区。在有些情况下,可以将这个缓冲区直接写入另一个通道,但是在一般情况下,您还需要

  • 查看数据。这是使用 访问方法 get() 来完成的。
  • 同样,如果要将原始数据放入缓冲区中,就要使用访问方法 put()。

状态变量

概述

可以用三个值指定缓冲区在任意时刻的状态:

  • position
  • limit
  • capacity

这三个变量一起可以跟踪缓冲区的状态和它所包含的数据。

我们将详细分析每一个变量,还要介绍它们如何适应典型的读/写(输入/输出)进程。在这个例子中,我们假定要将数据从一个输入通道拷贝到一个输出通道


Position


访问方法

相关推荐
编程、小哥哥26 分钟前
netty之基础aio,bio,nio
android·nio
YISHEN源码16 小时前
最新版ChatGPT对话系统源码 Chat Nio系统源码
人工智能·chatgpt·nio
Passion不晚16 小时前
Java NIO 全面详解:掌握 `Path` 和 `Files` 的一切
java·后端·nio
林小果116 小时前
NIO基础
java·网络·nio
DavidSoCool16 小时前
java socket bio 改造为 netty nio
java·nio
智慧的牛3 天前
java NIO实现UDP通讯
java·udp·nio
wang09077 天前
实现一个基于nio的discard server
nio·discard server
阿巳helloWorld9 天前
Tomcat中BIO和NIO的区别(Tomcat)
java·tomcat·nio
ZachOn1y19 天前
Java 入门指南:JVM(Java虚拟机)—— Java 内存运行时的数据区域
java·jvm·java-ee·团队开发·个人开发·nio
Flying_Fish_roe20 天前
java当中什么是NIO
java·开发语言·nio