这是实施步骤和问题:


Netty服务器处理程序从客户端接收消息
因为还有其他正在运行的线程来处理用户数据,所以我们需要将此请求放入队列,然后让工作进程处理
工作程序处理完数据后,我们可以在工作程序线程中响应客户吗?即使用HashMap缓存ChannelHandlerContext并稍后将其从工作线程获取到响应?


谢谢你们

最佳答案

是的你可以。 ChannelHandlerContext提供的操作都是线程安全的,因此您可以保留上下文实例供以后使用,并从其他线程中使用它。

ChannelHandlerContext与它所属的Channel具有相同的生命周期。当Channel关闭时,也会从管道中取消引用ChannelHandlerContext。如果保留对ChannelHandlerContext的引用,则应取消引用或确保垃圾收集器可以回收它。

07-24 16:05