Netty的内存池、对象池是怎么实现的?
Slab分配算法
- 一个Arena区域由 2个PoolSubPage 和 多个PoolChunkList 组成
默认一个Chunk包含2048个Page,每个Page大小为8KB
tinySubpagePools用于分配小于512字节的内存
- smallSubpagePools 用于分配大于512 小于 pageSize (8K) 的内存
- PoolChunkList 用于分配 大于pageSize (8K) 小于chunk大小(16M)的内存
- 大于chunk大小的内存在非池化分配