我有这样的管道(contextMono是 Mono ):
contextMono
.map(this::doLogic)
.map(this::doLogic1)
.flatMap(ctx -> Mono
.fromCallable(() -> doWithData(ctx))
.publishOn(Schedulers.elastic())
.map(this::buildReturnValue)
此管道在名为http-server-epoll-65(epoll工作组)的线程中执行。从flatMap在elastic的线程中执行(因为 publishOn(Schedulers.elastic()))。这组(弹性)线程用于flatMap和最后一个地图( buildReturnValue )。
但是我希望 buildReturnValue 在epoll-workers线程组(server-epoll-65或其他)中执行。 我不想将 Schedulers.elastic()用于非I / O(阻止)任务。
如何更改回计划程序的worker-epoll组?