Реактор: поменяйте планировщик с упругого на рабочий - PullRequest
0 голосов
/ 27 ноября 2018

У меня есть такой конвейер (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 выполняется в потоке эластика (из-за publishOn (Schedulers.elastic ()) ).Эта группа (эластичная) потоков используется для flatMap и для последней карты ( buildReturnValue ).

Но я хочу, чтобы buildReturnValue выполнялся в группе потоков epoll-working(сервер-epoll-65 или другой).Я не хочу использовать Schedulers.elastic () для задач, не связанных с вводом-выводом (блокировкой).

Как я могу вернуться к группе рабочих-эполеров Планировщиков?

...