Чтобы ответить на ваш первый вопрос с комментарием:
@ ErwinBolwidt Я знаю вариант использования для Mono / Flux в вычислениях, но я не понимаю, как конкретно использовать его в качестве параметра метода - Бибек Шакья
Когда вы используете его в качестве параметра, вам приходится иметь дело с ним как с потоком (то есть у вас его еще нет), поэтому, например, вы никогда не должны произносить lastname.block (), потому что это означает, что вы только что заблокировалипоток до тех пор, пока это значение не станет доступным.
Отказ от ответственности Дополнительная информация
Если вы спрашиваете, следует ли с этого момента что-либо оборачивать в моно илипоток, то, конечно, нет, потому что это добавляет ненужную сложность к методу и вызывающей стороне.
А с точки зрения дизайна ответ прост, задавая основные вопросы:
- Когда вообще использовать Mono?
- Ну, когда у вас все еще нет значения.
- Когда вообще использовать Flux?
- Хорошо, когда у вас есть поток данных или нет.
Поэтому мы не должны думать о том, кто использует метод, и попытаться сделатьМетод удобен для него, но на самом деле мы должны думать о методах.
И в этом случае используется тот случай, когда метод действительно нуждается в аргументе таким образом;это означает, что вы фактически выполняете потоковую обработку внутри, например, ваш метод принимает бесконечный поток данных датчика, а метод внутри сходит с ума, как:
Flux<Point> processSensor(Flux<Double> data){
return data.filter(blabla).zipWith(blabla).map(...);
}