微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

RxJava将两个流与链接结合在一起

如何解决RxJava将两个流与链接结合在一起

假设我有两个视频流。

Observable<List<Long>> events = Observable.interval(1,TimeUnit.SECONDS).buffer(5,TimeUnit.SECONDS);
Observable<Long> baseEvent = Observable.just(-1);

baseEvent是必须发送给订户并随后用于丰富events流的第一个事件。 两个流必须同时订阅,因为baseEvent是一个长期运行的操作,因此我们不想错过events流发出的任何内容,因此我们对其进行缓冲。

到目前为止,我已经尝试过

            Observable.create(em ->
            baseEvent
                    .doOnNext(em::onNext)
                    .map(be -> events.map(ev -> be + ":" + ev))
                    .subscribe(em),Emitter.BackpressureMode.BUFFER)
            .subscribe(System.out::println);

一个明显的问题是,如果baseEvent花费很长时间发射,那么我们将错过events流发射。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。