如何拦截rx-netty的线程池中的代码

时间:2015-12-31 08:27:06

标签: httpclient netty rx-netty

我有数据存储在ThreadLocal(例如MDC)中,我需要它来为每个请求更新它。

使用rx-netty http客户端我把值作为http头,但我找不到一个钩子,我可以在控件传递到netty线程池后读取该值,然后将其设置为线程本地的线程。

这是否可以使用某些API?

1 个答案:

答案 0 :(得分:1)

您可以使用RxNetty的ChannelHandler添加netty的PipelineConfigurator(有点像这样:https://github.com/ReactiveX/RxNetty/blob/0.4.x/rxnetty-examples/src/main/java/io/reactivex/netty/examples/tcp/cpuintensive/CPUIntensiveServer.java#L66)。然后你的代码将在Netty的eventloop中执行。 一旦你有一个示例代码,我可以调查它,以防你需要更多的帮助。