如何使用Netty从单独的线程发送WebSocket消息?

如何使用Netty从单独的线程发送WebSocket消息?,websocket,netty,Websocket,Netty,我正在尝试使用Netty4.0.8创建一个相当简单的WebSocket服务器。我有基本的握手设置和工作。但是,从一个单独的线程发送的消息似乎无法传递到客户端 客户机/服务器交互的工作方式是,客户机启动连接,然后通过WebSocket发送初始消息(“hello”)。服务器立即响应。此消息通过Chrome开发工具传递并可见。写入此消息后,我将频道存储在频道组中。此ChannelGroup初始化如下: this.broadcastGroup = new NioEventLoopGroup(); thi

我正在尝试使用Netty4.0.8创建一个相当简单的WebSocket服务器。我有基本的握手设置和工作。但是,从一个单独的线程发送的消息似乎无法传递到客户端

客户机/服务器交互的工作方式是,客户机启动连接,然后通过WebSocket发送初始消息(“hello”)。服务器立即响应。此消息通过Chrome开发工具传递并可见。写入此消息后,我将
频道
存储在
频道组
中。此
ChannelGroup
初始化如下:

this.broadcastGroup = new NioEventLoopGroup();
this.group = new DefaultChannelGroup("websocket", broadcastGroup.next());
group.add(ctx.channel());
然后添加
频道
,如下所示:

this.broadcastGroup = new NioEventLoopGroup();
this.group = new DefaultChannelGroup("websocket", broadcastGroup.next());
group.add(ctx.channel());
在单独的线程(在Netty之外创建)中,我执行以下操作:

但是,此消息从未出现在Chrome开发工具中


我已经尝试过调试,我可以看到当调用
group.write()
时,原始的
频道在组中,但这是我所能得到的。

检查返回的频道未来。。最有可能的是写操作的未来失败了。也许是你在握手结束前写的?

没关系。问题是我忽略了调用
group.flush()