PoolThreadCache
Netty有一个大的公共内存容器PoolArena,用来管理从操作系统中获得的内存,在高并发下如果所有线程都去这个大容器获取内存它的压力是非常大的,所以Netty为每个线程建立了一个本地缓存,即PoolThreadCache,每次需要申请内存的时候都先从本地缓存池中分配,分配失败再去公共内存池分配,PoolThreadCache是个最终类,它的数据结构如下:
在这个本地线程缓存中又细分两个子缓存列表,即small类型和normal类型的缓存列表,它的数据结构如下:
下面分析它的构造函数:
构造函数
以直接内存为例分析两个子缓存列表的初始化过程。