【问题标题】:SkipUntil does not work as expectSkipUntil 不能按预期工作
【发布时间】:2016-06-12 19:07:48
【问题描述】:

我正在寻找运算符 SkipUntil,但似乎没有按预期工作。 这是我的代码

@Test
public void testSkiUitil() throws InterruptedException {
    List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
    Observable observable2 = Observable.just(1);
    Subscription subscription = Observable.from(numbers)
                                          .skipUntil(observable2)
                                          .subscribe(System.out::println);
    Thread.sleep(3000);
    observable2.subscribe();
    new TestSubscriber((Observer) subscription).awaitTerminalEvent(5, TimeUnit.SECONDS);

}

我试图证明,由于 observable2 没有任何订阅,因此不发射任何项目,使用运算符 skipUntil 的第一个 observable 应该跳过所有项目。但仍在发射所有 5 个项目。

知道为什么吗?

医生说。

   Returns an Observable that skips items emitted by the source Observable until a second Observable emits

【问题讨论】:

    标签: rx-java reactive-programming observable reactivex


    【解决方案1】:

    运算符 skipUntil 本身订阅参数中的 observable。见源代码here

    【讨论】:

      猜你喜欢
      • 2015-06-26
      • 2013-05-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多