取消订阅不会在RxJava中级联回base observable

时间:2014-12-11 17:22:32

标签: java groovy reactive-programming observable rx-java

我有一个可观察的(" o"在示例中)我需要在观察者取消订阅后清理一些状态。根据{{​​3}},取消订阅建立在" o"之上的其他观察者。应该级联回到" o"。

这种行为似乎只适用于某些例子。在下面的代码中,我希望"清理"消息要打印三次,但在最后一种情况下(o1.throttleLast(...))它不是。

    def o = rx.Observable.create({ subscriber ->
        subscriber.add(Subscriptions.create({ println "cleanup" }))
    })

    o.subscribe({})
        .unsubscribe() // prints

    o.take(1)
        .subscribe({})
        .unsubscribe();  // prints

    o.throttleLast(1, TimeUnit.MILLISECONDS)
        .subscribe({})
        .unsubscribe() // doesn't print

有什么想法吗?感谢。

1 个答案:

答案 0 :(得分:1)

throttleLast的错误已在RxJava 1.0.3中修复。