val observable = Observable(...)
.publish
val subscription = observable.connect
observable.doOnsubscribe(() => doSomething)
.subscribe()
永远不会调用doSomething
。 RxJava完全相同的代码工作正常。无论出于何种原因,它似乎从未传播到底层的Java Observable
更新: 所以我的解决方法是
observable.asJavaObservable
.doOnSubscribe(new Action0 {
override def call(): Unit = {
doSomething
}
}}.asScala
.subscribe()
答案 0 :(得分:0)
publish
创建一个连接的Observable。这与标准Observable略有不同,您需要调用connect()
以便连接的Observable开始发送。请参阅文档here。