Я экспериментировал с Project Reactor и реактивными потоками в целом.Я столкнулся с проблемой при использовании subscribeOn
для запуска потока в другом потоке.Имея мой код в основном, мне нужен блок основного потока, пока поток не завершится, поэтому я сделал что-то вроде этого:
Flux.just(1, 2, 3, 4)
.log()
.subscribeOn(Schedulers.parallel())
.subscribe((i) -> {
// some operation
});
try {
Thread.sleep(20000L);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("Finished");
Затем я заметил, что есть методы blockLast()
, которые делают блокировку.Но я не мог использовать и подписку, и blockLast, так как они не возвращают Flux
.
Есть ли изящный способ сделать это?