【问题标题】:Repeat sending object to subsriber on Rx重复发送对象以订阅 Rx
【发布时间】:2017-03-21 12:56:54
【问题描述】:

是否可以在 Rx 中重复向订阅者发送相同的对象? 例如此代码(在 Kotlin 上):

 val exmp = listOf("А")
        var observable = exmp.toObservable()
            observable.subscribeBy(
                    onNext = {
                        it + "1"
                        println(it)
                    },
                    onError = { it.printStackTrace() },
                    onComplete = { println("Done!") }
            )

我尝试将字符串值“A”重复发送到方法 onNext() 并获取“A111111”。 据我了解,Rx 库的方法 replay() 再次开始为新订阅者发送日期。在圈子for 从可观察到的日期没有改变,只是方法被调用了几次

【问题讨论】:

    标签: rx-java reactive-programming rx-java2 rx-kotlin


    【解决方案1】:

    你可以尝试让你的 observable 成为 ConnectableObservable 做 observable.publish();这样,所有订阅者都将获得相同的信息,并且对象也只会被创建一次。 https://github.com/ReactiveX/RxJava/wiki/Connectable-Observable-Operators

    【讨论】:

    • 不打扰 RX,用老办法做
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-14
    • 1970-01-01
    相关资源
    最近更新 更多