一、前言

  前面介紹了ServerCnxn,下面開始學(xué)習(xí)NIOServerCnxn。

二、NIOServerCnxn源碼分析

  2.1 類的繼承關(guān)系

public class NIOServerCnxn extends ServerCnxn {}

  說明:NIOServerCnxn繼承了ServerCnxn抽象類,使用NIO來處理與客戶端之間的通信,使用單線程處理。

  2.2 類的內(nèi)部類

  1. SendBufferWriter類 

Android培訓(xùn),安卓培訓(xùn),手機(jī)開發(fā)培訓(xùn),移動開發(fā)培訓(xùn),云培訓(xùn)培訓(xùn) SendBufferWriter

  說明:該類用來將給客戶端的響應(yīng)進(jìn)行分塊,其核心方法是checkFlush方法,其源碼如下

Android培訓(xùn),安卓培訓(xùn),手機(jī)開發(fā)培訓(xùn),移動開發(fā)培訓(xùn),云培訓(xùn)培訓(xùn)

        private void checkFlush(boolean force) {            if ((force && sb.length() > 0) || sb.length() > 2048) { // 當(dāng)強(qiáng)制發(fā)送并且sb大小大于0,或者sb大小大于2048即發(fā)送緩存                sendBufferSync(ByteBuffer.wrap(sb.toString().getBytes()));     &
        
		

網(wǎng)友評論