非阻塞IO(NIO)家族成員

1.主體部分

  • Buffer緩衝區:數據處理的基礎單元,客戶端發送與接收數據都需通過Buffer進行轉發
  • Channel通道:Buffer傳輸的通道,類似於流,但不同於IN/OUT  Stream;流具有獨佔性與單向性;通道則偏向於數據流通多樣性
  • Socket選擇器:處理客戶端所有事件的分發器

2. Charset擴展部分

  • Charset字符編碼:加密解密
  • 原生支持的、數據通道級別的數據處理方式,可以用於數據傳輸級別的數據加密、解密等操作

3. Buffer

  • Buffer包括ByteBuffer、CharBuffer、ShortBuffer、IntBuffer、LongBuffer、FloatBuffer、DoubleBuffer
  • 寫數據時,先寫入Buffer,後傳入Channel。即Buffer->Channel
  • 讀數據時,先從Channel讀,後存入Buffer。即Channel->Buffer
  • 爲NIO塊狀操作提供基礎,數據都按“塊”進行傳輸

4. Channel

  • 可從通道中獲取數據也可輸出數據到通道;按“塊”Buffer進行
  • 可併發可異步讀寫數據
  • 讀數據時讀取到Buffer,寫數據必須通過Buffer寫數據
  • Channel包括FileChannel、SocketChannel、DatagramChannel、ServerSocketChannel
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章