Netty中的Buffer API

2018-08-03 11:01 更新

Buffer API主要包括

  • ByteBuf
  • ByteBufHolder

Netty 根據(jù) reference-counting(引用計(jì)數(shù))來(lái)確定何時(shí)可以釋放 ByteBuf 或 ByteBufHolder 和其他相關(guān)資源,從而可以利用池和其他技巧來(lái)提高性能和降低內(nèi)存的消耗。這一點(diǎn)上不需要開(kāi)發(fā)人員做任何事情,但是在開(kāi)發(fā) Netty 應(yīng)用程序時(shí),尤其是使用 ByteBuf 和 ByteBufHolder 時(shí),你應(yīng)該盡可能早地釋放池資源。 Netty 緩沖 API 提供了幾個(gè)優(yōu)勢(shì):

  • 可以自定義緩沖類(lèi)型
  • 通過(guò)一個(gè)內(nèi)置的復(fù)合緩沖類(lèi)型實(shí)現(xiàn)零拷貝
  • 擴(kuò)展性好,比如 StringBuilder
  • 不需要調(diào)用 flip() 來(lái)切換讀/寫(xiě)模式
  • 讀取和寫(xiě)入索引分開(kāi)
  • 方法鏈
  • 引用計(jì)數(shù)
  • Pooling(池)
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)