这是实施步骤和问题:
Netty服务器处理程序从客户端接收消息
因为还有其他正在运行的线程来处理用户数据,所以我们需要将此请求放入队列,然后让工作进程处理
工作程序处理完数据后,我们可以在工作程序线程中响应客户吗?即使用HashMap缓存ChannelHandlerContext并稍后将其从工作线程获取到响应?
谢谢你们
最佳答案
是的你可以。 ChannelHandlerContext
提供的操作都是线程安全的,因此您可以保留上下文实例供以后使用,并从其他线程中使用它。ChannelHandlerContext
与它所属的Channel
具有相同的生命周期。当Channel
关闭时,也会从管道中取消引用ChannelHandlerContext
。如果保留对ChannelHandlerContext
的引用,则应取消引用或确保垃圾收集器可以回收它。