閱讀242 返回首頁    go 阿裏雲 go 技術社區[雲棲]


Netty源碼注釋翻譯-Channel類

定義為一個通往網絡socket或者一個由I/O讀寫能力的組件。

通道提供:
1,通道的當前狀態,打開?已連接?
2,跟通道關聯的配置信息ChannelConfig,包括buffer大小等。
3,通道支持的I/O操作,如讀、寫、連接、綁定等。
4,跟通道關聯的ChannelPipeline,用來處理通道的I/O事件和請求。

所有的I/O操作都是異步的。

在Netty中,左右的I/O操作都是異步的,這意味著任何的I/O相關調用都會立即返回,因此這不能保證在這個調用返回的時候I/O請求能夠被處理完成。然而,調用返回的ChannelFuture實例在I/O請求操作成功的時候會通知你。

Channel的繼承,Channel接口提供了parent()方法,方法的使用依賴於Channel的創建方式。例如:一個被ServerSocketChannel accepted的SocketChannel,parent()方法會返回ServerSocketChannel

繼承結構的語義依賴於Channel所屬通信方式的實現,例如:你可以寫一個新的Channel實現,通過實現創建一個子通道來共享一個socket連接,as BEEP and * SSH do.

轉換為子類對象來獲取對transport的特殊的操作。Downcast Channel為子類型來調用相關方法,如:對於老的報文傳輸,多點傳輸操作join/leave是由DatagramChannel提供的。

最後更新:2017-05-23 10:02:32

  上一篇:go  RecyclerView Part 2:選擇模式
  下一篇:go  模塊化的樂趣