Netty 使用的是堆外內(nèi)存,需要手動(dòng)釋放,使用引用計(jì)數(shù)的方式管理內(nèi)存,當(dāng)引用計(jì)數(shù) =0,回收ByteBuf 底層內(nèi)存
成都創(chuàng)新互聯(lián)公司是專業(yè)的高陵網(wǎng)站建設(shè)公司,高陵接單;提供成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站、成都外貿(mào)網(wǎng)站建設(shè)公司,網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行高陵網(wǎng)站開(kāi)發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛(ài)的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來(lái)合作!原則:誰(shuí)使用retain() , 誰(shuí)釋放release()
1.1.2? 創(chuàng)建ByteBuf的方式其中?
ctx 為 ChannelHandlerContext 通道處理上下文對(duì)象
ctx.alloc() 返回?ByteBufAllocator?ByteBuf的分配器
2. 課程內(nèi)容 1 ByteBuf 的結(jié)構(gòu)API類別 | 名稱 | 使用 |
容量 | capacity() | 當(dāng)前ByteBuf容量?capacity?=? 已廢棄的字節(jié) + 可讀字節(jié) + 可寫(xiě)字節(jié) |
maxCapacity() | 大容量=? capacity?+?可擴(kuò)容字節(jié) | |
readableBytes() | ByteBuf當(dāng)前可讀字節(jié)數(shù),= writerIndex - readerIndex | |
isReadable() | 是否可讀 | |
writableBytes() | ByteBuf當(dāng)前可寫(xiě)字節(jié)數(shù),= capacity?-?writeIndex | |
isWritable() | 是否可寫(xiě) | |
MaxWritableBytes() | 大可寫(xiě)字節(jié)數(shù),= maxCapacity?-?writeIndex | |
讀寫(xiě)指針 | readerIndex() | 返回當(dāng)前讀指針readerIndex |
readerIndex(int) | 設(shè)置讀指針index | |
writerIndex() | 返回當(dāng)前寫(xiě)指針writerIndex | |
writerIndex(int) | 設(shè)置寫(xiě)指針index | |
markReaderIndex() | 保存當(dāng)前讀指針(推薦) | |
resetReaderIndex() | 把當(dāng)前讀指針恢復(fù)到之前保存的值(推薦) | |
markWriterIndex() | 保存當(dāng)前寫(xiě)指針(推薦) | |
resetWriterIndex() | 把當(dāng)前寫(xiě)指針恢復(fù)到之前保存的值(推薦) | |
讀寫(xiě) | readBytes(byte[] dst) | 把ByteBuf中的數(shù)據(jù)全部讀取到dst |
writeBytes(byte[] src) | 將src中的數(shù)據(jù)寫(xiě)入到ByteBuf | |
readByte() | 從ByteBuf中讀取一個(gè)字節(jié) | |
writeByte(byte b) | 往ByteBuf寫(xiě)入一個(gè)字節(jié) | |
retain() | 引用計(jì)數(shù)加1 | |
release() | 引用計(jì)數(shù)減1 | |
slice() | 截取readerIndex到writeIndex的數(shù)據(jù),返回大容量為原始ByteBuf的readableBytes()的ByteBuf | |
duplicate() | 共享原始ByteBuf,書(shū)本確實(shí)示例,后期補(bǔ)全 | |
copy() | 復(fù)制原始ByteBuf,返回的ByteBuf寫(xiě)數(shù)據(jù)不影響原始ByteBuf | |
retainedSlice() | 等價(jià)于slice().retain(),需要調(diào)用一次release(),否則報(bào)錯(cuò) | |
retainedDuplicate | 等價(jià)于duplicate().retain(),需要調(diào)用一次release(),否則報(bào)錯(cuò) | |
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購(gòu),新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧