我正在开发的服务器根据从客户端收到的消息有不同的任务要执行,有些任务非常简单并且需要很少的时间来执行,但其他任务可能需要一段时间。
将 ExecutionHandler 添加到管道似乎是复杂任务的一个很好的解决方案,但我想避免线程化简单任务。
我的管道如下所示:
pipeline.addLast("decoder", new MessageDecoder());
pipeline.addLast("encoder", new MessageEncoder());
pipeline.addLast("executor", this.executionHandler);
pipeline.addLast("handler", new ServerHandler(this.networkingListener));
其中 MessageEncoder 返回一个 Message 对象(for decode
),它定义了请求的任务。
有没有办法根据解码的消息跳过执行处理程序?
这个问题可以概括为:有没有办法确定是否使用下一个处理程序?
谢谢。