Как объяснено в документации Project Reactor , ничего не произойдет, пока вы не наберете subscribe
до Publisher
.Эта операция возвращает экземпляр Disposable
, что означает, что операция может все еще продолжаться в этой точке.
Если вы не находитесь в середине неблокирующего реактивного конвейера (например, HTTP-запрос /обмен ответами или пакетная операция), и вам нужно дождаться завершения этого конвейера, прежде чем выходить из ВМ - тогда вы можете block()
.На самом деле это один из немногих «разрешенных» вариантов использования для этого.
Ваш вопрос на самом деле не объясняет, что вы подразумеваете под «проверять ответ».Здесь мы просто получим POJO (если статус ответа HTTP не равен 200 или мы не можем десериализовать ответ, будет отправлен сигнал об ошибке).В вашем примере вы можете получить что-то вроде:
Mono<User> one = this.webClient...
Mono<Account> two = this.webClient...
Mono<Book> three = this.webClient...
// we want all requests to happen concurrently
Mono<Void> all = Mono.when(one, two, three);
// we subscribe and then wait for all to be done
all.block();