0
我試圖讓我的周圍反應式編程的頭,所以我想問一下,如果有任何好處在這裏使用助焊劑:它依賴於使用Flux而不是for循環,有什麼好處?
override fun notifyObserversOnMessage(message: Message) {
for (observer in observers) {
observer.reactOnMessage(message)
}
}
:中
override fun notifyObserversOnMessage(message: Message) {
Flux.fromStream(observers.stream())
.map { observer -> Mono.just(observer.reactOnMessage(message)) }
.subscribe()
}
代替每個觀察員都在做什麼,如果那是IO還是不?
如果每個觀察者都將消息寫入數據庫,它是否會與Flux異步完成,或者循環將依次運行? – Orestis
@Orestis正如你所寫,它是連續的。一種獲得並行性的方式就像'observers.toFlux()。flatMap {observer - > Mono.fromCallable {observer.reactOnMessage(message)} .subscribeOn(Schedulers.parallel())} .subscribe()''。 – ephemient