RxJava - 过滤和效率 - 多个流与单个流

时间:2018-03-02 20:16:38

标签: rx-java2

使用单个Processor以类似方式分发事件并对流进行过滤是不是有缺点?

Processor processor = PublishProcessor.create();

processor
    .filter(event -> event instanceof String)
    .subscribe(...);

以下对话:

 // for each class I create a own processor
 private HashMap<Class<?>, Processor> mProcessors = new HashMap<>();

 // get the processor for the desired class
 Processor processor = mProcessors.get(String.class);
 processor
    .subscribe(...);

背景

我使用这样的apporach用rx java流替换总线。可能会发生我通过总线观察到的50个或更多类,并且我当前的实现在处理器上使用我观察到的每个类。我想简化我的库代码,因此我想知道是否有任何理由以这种方式保留它,或者我是否可以继续使用单个Processor并且只是过滤掉我发生的事件。感兴趣的。

具体问题

使用一个处理大量事件的Processor是否存在任何缺点,并且在Subscribers仅对Subscriber感兴趣的同时订阅了大量Processor少量事件,因此每个订阅者都需要过滤流。或者这对于每个事件类使用一个Subscribers和所有Processor只订阅仅发出他们感兴趣的事件的具体docker build一样有效吗?

0 个答案:

没有答案