欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Netty--- 连接多个客户端

程序员文章站 2022-04-08 21:38:34
...

核心思路

要给给客户端的发送消息就要给客户端所对应的chanel的writeAndFlush() 方法, 所以多个客户端就要管理多个channel对象, Netty提供使用ChannelGroup 来管理channel。

当handlerAdded回调执行的时候 我们往channelgroup 对象添加channel,在handlerRemoved 从channelGroup 中移除channel。

    @Override
    public void handlerAdded(ChannelHandlerContext ctx) throws Exception {
        Channel channel = ctx.channel();
        channelGroup.add(channel);
    }

    @Override
    public void handlerRemoved(ChannelHandlerContext ctx) throws Exception {
        Channel channel = ctx.channel();
        channelGroup.remove(channel);
    }

我们拿到了channelGroup 就可以遍历里面的Channel对象 从而操作他们。

相关标签: socket编程