基本上,我們有一個生產者一次產生一個隨機數和幾個睡覺1秒鐘然後打印一個數字的消費者。如何在rxjava中實現平衡扇出?
每個消費者都是獨家的,每個號碼只能有一個接收者。
此行爲與java中的JMS隊列或BlockingQueue類似。
在阿卡流,我能找到
balance[T] – (1 input, N outputs) given an input element emits to one of its output ports.
但我無法找到任何內置組件rxjava做同樣的工作。
Observable總是向所有觀察者廣播消息,如pub-sub
風格。我應該怎麼做,如果我需要queue
風格。
我想念什麼?
你的用例是什麼?你想並行處理元素嗎? – akarnokd
是的,我想要並行處理元素。我可以通過多線程和阻塞隊列來做到這一點,但我不知道是否讓這個更優雅。 生產者正在發佈從數據庫中提取的事件,以及一大堆耗時費力處理這些事件的消費者。這些消費者完全一樣。 –