PooledByteBuf記憶體池

2021-08-02 15:39:16 字數 1172 閱讀 6161

netty記憶體池可調優引數

引數名說明

預設值io.netty.allocator.pagesize

page的大小

8192

io.netty.allocator.maxorder

乙個chunk的大小=pagesize << maxorder

11io.netty.allocator.numheaparenas

heap arena的個數

min(cpu核數,maxmemory/chunksize/6),一般來說會=cpu核數

io.netty.allocator.numdirectarenas

direct arena的個數

min(cpu核數,directmemory/chunksize/6),一般來說會=cpu核數

io.netty.allocator.tinycachesize

poolthreadcache中tiny cache每個memoryregioncache中的entry個數

512io.netty.allocator.smallcachesize

poolthreadcache中small cache每個memoryregioncache中的entry個數

256io.netty.allocator.normalcachesize

poolthreadcache中normal cache每個memoryregioncache中的entry個數

64io.netty.allocator.maxcachedbuffercapacity

poolthreadcache中normal cache陣列長度

32 * 1024

io.netty.allocator.cachetriminterval

poolthreadcache中的cache收縮閾值,每隔該值次數,會進行一次收縮

8192

io.netty.allocator.type

allocator型別,如果不使用記憶體池,則設定為unpooled

pooled

io.netty.nounsafe

是否關閉direct buffer

false

io.netty.leakdetectionlevel

記憶體洩露檢測級別

******

還是記憶體 記憶體

對於記憶體一點都不了解到現在感覺上已經蠻了解的,可是事實上又遇到麻煩了 實在是想不通,怎麼會出現問題呢?重新審視一下動態開闢記憶體的操作 1.對於函式以及函式內的臨時變數我們不需要考慮它們的記憶體空間,因為在函式執行結束的時候會自動釋放掉.真的是這樣的嗎?如果是這樣的話,對於固定陣列我若開闢乙個足夠...

《記憶體管理》 記憶體

1.c c 記憶體分布 我們先來看下面的一段 和相關問題 int globalvar 1 static int staticglobalvar 1 void test char char2 abcd char pchar3 abcd int ptr1 int malloc sizeof int 4 ...

記憶體分配 記憶體分段 記憶體分頁 虛擬記憶體

記憶體應容納作業系統和各種使用者程序,因此應該盡可能有效地分配記憶體。通常,我們需要將多個程序同時放在記憶體中。因此我們需要考慮,如何為輸入佇列中需要調入記憶體的程序分配記憶體空間。在採用連續記憶體分配時,每個程序位於乙個連續的記憶體區域,與包含下乙個程序的記憶體相連。1.最為簡單的記憶體分配方法之...