【问题标题】:RxJava: Merged observable calls onComplete spuriouslyRxJava:虚假地合并了可观察的 onComplete 调用
【发布时间】:2016-10-11 02:41:23
【问题描述】:

我有几个从一组中合并的观察者。出于某种原因,合并后的 observable 正在调用 onComplete,即使单个 observable 没有。

例子:

Set<Observable<InputOutputEvent>> set = new HashSet<Observable<InputOutputEvent>>();
    for (Observable ob : obs) {
        ob.subscribe((e) -> {
        }, 
        (error) -> {
System.out.println("This does NOT happen.");
        }, 
        () -> {
            System.out.println("This does NOT happen.");
        });
        set.add(c.event());
    }

  Subscription s = Observable.merge(set).subscribe((e) -> {
            }, 
            (error) -> {
                System.out.println("This does NOT happen.");
            }, 
            () -> {
                System.out.println("This DOES happen.");
            });

这怎么可能?合并 observable 不应该只在所有合并的 observable 都调用它时才调用 onComplete 吗?

我也检查了错误,但没有。

【问题讨论】:

    标签: java rx-java


    【解决方案1】:

    将此作为对他人的警告:

    可观察对象的set 是空的。在这种情况下会立即调用 onComplete。

    【讨论】:

      猜你喜欢
      • 2017-02-17
      • 1970-01-01
      • 1970-01-01
      • 2012-09-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-12-15
      相关资源
      最近更新 更多