后台回复“电子书” “资料” 领取一份干货,数百面试手册等你 开发者技术前线 ,汇集技术前线快讯和关注行业趋势,大厂干货,是开发者经历和成长的优秀指南。
恕我直言,有了这款 IDEA 插件,你可能只需要写 30% 的代码
如果再写for循环,我就锤自己
The following article is from 58技术 Author 崔海东
点击“开发者技术前线”,选择“星标🔝”
让一部分开发者看到未来
来自:58技术
导读
在java的世界里好像已经不再需要关注内存申请、内存回收这些直接内存操作了。更多的时候java程序员是在讨论垃圾回收器(内存分代、回收算法)等内存自动回收技术。操作系统中各种相关名词“内存池”、“内存碎片”、“malloc”、“free”似乎早已远去。
本文借助于内存池的java实现—Netty内存池,对相关理论和实现进行了阐述以使我们重新复习一下内存分配和回收的相关知识。
背景
为什么需要内存池
怎么实现一个内存池
Netty中的内存池
public static void main(String[] args) {
// 默认为堆内存,Netty内存池可以为堆内存,也可以为堆外内存
ByteBufAllocator alloc = new PooledByteBufAllocator();
// 申请3M的的堆外内存
ByteBuf byteBuf = alloc.directBuffer(3145728);
// 内存释放
byteBuf.release();
// 申请12字节的堆内存
ByteBuf heapBuf = alloc.buffer(12);
heapBuf.release();
}
总结
后台回复“电子书” “资料” 领取一份干货,数百面试手册等你 开发者技术前线 ,汇集技术前线快讯和关注行业趋势,大厂干货,是开发者经历和成长的优秀指南。