提綱
1、概述
2、ChannelGroup和DefaultChannelGroup的類體系結構
3、詳解
1、概述
在看別人代碼的過程中遇到這兩個類,以前沒有用過,總結一下它們的用法。
2、ChannelGroup和DefaultChannelGroup的類體系結構
類的體系圖:
3、詳解
可以看到ChannelGroup實際上是Channel的集合。ChannelGroup用來將類似的Channel構建成集合,從而可以對多個channel進行統一的管理。
可以能有小夥伴要問了,一個Bootstrap不是隻對應一個channel嗎?那麼哪裏來的channel的集合?
事實上,在一些複雜的程序中,我們可能啓動多個Bootstrap來處理不同的業務,所以相應的就會有多個channel。
如果創建的channel過多,並且這些channel又是很同質化的時候,就有需求對這些channel進行統一管理。這時候就需要用到channelGroup了。
參考資料:
1、https://blog.csdn.net/JasonZi/article/details/78103346,這篇博客是一個簡單例子,通過這個例子搞懂了ChannelGroup的用法
2、https://netty.io/4.0/api/io/netty/channel/group/DefaultChannelGroup.html,netty官方文檔