Для чего-то простого, вы можете использовать DirectProcessor
.Это не самый сложный приемник флюса, но он поможет вам в этом.
Я написал небольшой пример, извините, он в kotlin.
val hot = DirectProcessor.create<String>()
hot.onNext("Hello")//not printed
hot.subscribe { println(it) }
//Java: hot.subscribe((it) -> System.out.println(it));
hot.onNext("Goodbye")//printed
Thread.sleep(100)
hot.onNext("foo")//printed
DirectProcessor реализует Flux, поэтому вы можете использовать его как Flux.
Как видите, элементы, добавленные до подписки на горячий источник, не будут переданы подписке.
Глядя на другие посты, Flux # create и Flux # generate также могут быть хорошими местами для начала. Разница между Flux.create и Flux.generate Это увеличит сложность и контроль над потоком.