java 缓冲池 BufferPool
来源:互联网 发布:mac启动盘制作 编辑:程序博客网 时间:2024/05/29 12:11
/** * 缓冲池 */public class BufferPool {private static final int BUFFER_SIZE = 2 * 1024 * 1024;//缓冲包2Mprivate static final int BUFFER_MAX_NUM = 20;//缓冲池保留最大数量private static final ConcurrentLinkedQueue<byte[]> buffers = new ConcurrentLinkedQueue<byte[]>();private static AtomicInteger countCreated = new AtomicInteger(0);//已创建的缓冲包个数/** 分配 */public static byte[] allocate() {byte[] result = buffers.poll();//创建新缓冲包if(result == null) {result = new byte[BUFFER_SIZE];//记录创建个数int count = countCreated.incrementAndGet();//日志if(count <= BUFFER_MAX_NUM) {LogCore.CORE.info("创建新的BufferPool缓冲池,已创建总数量:count={}", count);} else {LogCore.CORE.warn("创建新的BufferPool缓冲池,已创建总数量:count={}", count, new Throwable());}}return result;}/** * 回收 * @param buff */public static void deallocate(byte[] buff) {//缓冲池已达上限if(buffers.size() >= BUFFER_MAX_NUM) return;//回收的缓冲大小必须正确if(buff.length != BUFFER_SIZE) return;//加回到池中buffers.add(buff);}}
1 0
- java 缓冲池 BufferPool
- DB2的缓冲池(BUFFERPOOL)
- DB2的缓冲池(BUFFERPOOL)
- 深入理解DB2缓冲池(BufferPool)
- 深入理解db2缓冲池bufferpool
- 深入理解DB2缓冲池(BufferPool)
- 缓冲技术之二:缓冲池BufferPool的简单实现
- 深入理解数据库(DB2)缓冲池(BufferPool)
- mysql内核源代码深度解析 缓冲池 buffer pool 整体概述(bufferpool部分一)
- mysql内核源代码深度解析 缓冲池 LRU模块 全面分析(bufferpool部分二)
- java 字符串缓冲池 String缓冲池
- java 字符串缓冲池 String缓冲池
- java 字符串缓冲池 String缓冲池
- java 字符串缓冲池 String缓冲池
- java 字符串缓冲池 String缓冲池
- java字符串缓冲池 string缓冲池
- java之缓冲池
- java String 缓冲池
- 13-关于HTML编码
- C/C++可变参数
- 2017年计划
- 英语词根词缀记忆法
- Linux find命令
- java 缓冲池 BufferPool
- linux RedHat系统版本伪分布式安装hadoop2.5.2
- windows 字符
- 使用IntelliJ IDEA 配置Maven(入门)
- View的工作原理(一)
- java已经会的梳理
- 关于微服务和 Java 需要知道的 5 件事
- Get Regexp Matches正则表达取值
- 滑动 点击 下拉 listview时出现黑色的解决方法