Официальный путь - block()
, который должен служить предупреждением о том, что вы, возможно, делаете что-то не так, потому что блокировка неблокирующей системы - это все равно, что выстрелить себе в ногу.
На самом деле так многотак что недавно мы запретили делать это на некоторых неблокирующих Schedulers
Reactor, выдавая исключение при использовании этих API:
java.lang.IllegalStateException: block()/blockFirst()/blockLast() are blocking, which is not supported in thread parallel-1
Если вам действительно нравится стрелять себе в ногу, естьвсегда антипаттерновый раствор .toFuture().get()
... ¯\_(ツ)_/¯