netty源碼分析 之八 transport(總結)

前面學習了channel和bootstarp。

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


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  










發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章