
20171229150317086.jpg
每一個(gè)Channel被創(chuàng)建,就會(huì)生成對(duì)應(yīng)的一個(gè)ChannelPipeline和它綁定。
ChannelPipeline中包含了一個(gè)處理該Channel消息的ChannelHandler鏈。
當(dāng)每一個(gè)ChannelHandler被注冊到該ChannelPipeline中就會(huì)生成一個(gè)對(duì)應(yīng)的 ChannelHandlerContext,和該ChannelHandler進(jìn)行綁定。
一個(gè)ChannelHandler可以從屬于(注冊到)多個(gè)ChannelPipeline。所以,一個(gè)ChannelHandler可以綁定多個(gè)ChannelHandlerContext。不過,這樣的ChannelHandler必須使用@Sharable注解標(biāo)注,保證它的線程安全性,否則試圖將它注冊到多個(gè)ChannelHandlerPipeline中時(shí)將會(huì)拋出異常。