Java netty:保存通道处理程序上下文以供以后使用

Java netty:保存通道处理程序上下文以供以后使用,java,netty,Java,Netty,我想保存一个传入通道(ctx)供以后使用,就像在HashMap中一样 public void channelRead(ChannelHandlerContext ctx, Object msg) { ByteBuf in = (ByteBuf) msg; System.out.println("Server received: " + in.toString(CharsetUtil.UTF_8)); // example channels.

我想保存一个传入通道(ctx)供以后使用,就像在HashMap中一样

    public void channelRead(ChannelHandlerContext ctx, Object msg) {
        ByteBuf in = (ByteBuf) msg;
        System.out.println("Server received: " + in.toString(CharsetUtil.UTF_8));
        // example channels.put("channelname", ctx);
    }
我的想法是,我可以通过一个字符串从映射中获取ctx,并将另一个类的消息写入其中,如:

channels.get(“keyforchannel”).writeAndFlush(“这里是我发送给这个特定频道的消息”)

有人知道我如何才能做到这一点吗?

Netty为此提供了解决方案。 它不是一个映射,而是一个用于索引活动通道的线程安全集。 它有许多有用的功能,例如写入组中的所有通道,使用过滤器过滤要写入的通道,以及在通道关闭时自动弹出通道