Netty的ByteBuf是JDK中ByteBuffer的升級(jí)版,提供了NIO buffer和byte數(shù)組的抽象視圖。

ByteBuf的主要類集成關(guān)系:

大學(xué)生就業(yè)培訓(xùn),高中生培訓(xùn),在職人員轉(zhuǎn)行培訓(xùn),企業(yè)團(tuán)訓(xùn)

(圖片來(lái)自Netty權(quán)威指南,圖中有一個(gè)畫(huà)錯(cuò)的地方是PooledByteBuf中的最后一個(gè)子類應(yīng)該是PooledUnsafeDirectByteBuf)


從繼承關(guān)系可以看出AbstractReferenceCountedByteBuf的子類分為兩類:PooledUnpooledByteBuf。

Pooled ByteBuf是基于對(duì)象池的ByteBuf(會(huì)被緩存),Unpooled則是普通的ByteBuf對(duì)象。

無(wú)論是否基于內(nèi)存池的ByteBuf,它的子類有分為DirectByteBuf和HeapByteBuf分別表示在堆外內(nèi)存分配的緩沖區(qū)和在堆內(nèi)存的緩沖區(qū)。

堆內(nèi)存緩沖區(qū)的特點(diǎn)是分配和回收速

網(wǎng)友評(píng)論