本文我們將先從NioEventLoop開(kāi)始來(lái)學(xué)習(xí)服務(wù)端的處理流程。話不多說(shuō),開(kāi)始學(xué)習(xí)~~~~

  我們從上文中已經(jīng)知道server在啟動(dòng)的時(shí)候會(huì)開(kāi)啟兩個(gè)線程:bossGroup和workerGroup,這兩個(gè)線程分別是boss線程池(用于接收client請(qǐng)求)和worker線程池(用于處理具體的讀寫(xiě)操作),這兩個(gè)線程調(diào)度器都是NioEventLoopGroup,bossGroup有一個(gè)NioEventLoop,而worker線程池有n*cup數(shù)量個(gè)NioEventLoop。那么我們看看在NioEventLoop中的是如何開(kāi)始的:

  NioEventLoop本質(zhì)上是一個(gè)線程調(diào)度器(繼承自ScheduledExecutorService),當(dāng)bind之后就開(kāi)始run起一個(gè)線程:  

平面設(shè)計(jì)培訓(xùn),網(wǎng)頁(yè)設(shè)計(jì)培訓(xùn),美工培訓(xùn),游戲開(kāi)發(fā),動(dòng)畫(huà)培訓(xùn)

 (代碼一)
1
   @Override 2     protected void

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