Buffer/ByteBuffer/ByteBuf详解

计算机软件开发 2024-9-11 12:07:49 65 0 来自 中国
ByteBuffer

ByteBuffer是一个抽象类,NIO编程中经常会使用,Netty常用的ByteBuf实际上也是对其的一种封装

  • Byte即字节,一个8位的二进制
  • Buffer即缓冲区,所谓缓冲区,着实就是一个暂时存储数据的容器(可以明白为一个数组),而且一般可以重用
缓冲区

缓冲区有什么用呐?

  • 镌汰实际的物理读写次数
  • 缓冲区创建时分配固定内存,这块内存地区可被重用,镌汰动态分配和接纳内存的次数
举个简朴的例子 比如我们去取快递(数据),快递很多,一次只能取一个,那我们就必要往返跑很多趟(实际读写次数)
到场我们有个大筐,一次把快递全装返来,就省了不少事
这个大筐在这个过程就扮演一个“缓冲区”的作用,下次取快递还能用
byte[]

Buffer类是JDK1.4引入的NIO包中界说的一个抽象类,那我们先看看1.4之前一般是怎样从管道获取数据的,大概写法如下:
您需要登录后才可以回帖 登录 | 立即注册

Powered by CangBaoKu v1.0 小黑屋藏宝库It社区( 冀ICP备14008649号 )

GMT+8, 2024-10-19 02:23, Processed in 0.166710 second(s), 32 queries.© 2003-2025 cbk Team.

快速回复 返回顶部 返回列表