天天看點

netty源碼分析 之八 transport(總結)channel其他包總結

前面學習了channel和bootstarp。

本文分為兩部分,一是補充下channel  二是整體來看下channel和bootstarp

channel其他包

netty源碼分析 之八 transport(總結)channel其他包總結

embedded  

epoll unix實作 epoll選擇socket

local 就是本地通訊,不需要跨ip

group  channelGroup 包含了channel的集合類,提供一些線程安全的方法

rxtx sctp unt 各種協定

主要是nio這個包,看下其實很簡單 實作AbstractChannel和SingleThreadEventLoop  即可。一個來控制channel操作,一個來控制線程池

總結

Bootstrap  提供了統一的入口類,用來建構server或client

EventLoopGroup 定時線程池  需要異步處理的,可以放到線程池來處理

channel 為定義接口的方法,bind  connect read  write  

channelHandler  定義一些事件方法, inbound outbound

channelPipe 為構造channelhandler 連結清單

ChannelHandlerInvoker   主要有EventExecutor  ,用來決定本線程執行?還是送出給線程,具體的執行者是channelHandler的子類

ChannelHandlerContext  為上下文包含了  channelHandler   Channel  EventExecutor ChannelHandlerInvoker  

netty源碼分析 之八 transport(總結)channel其他包總結