rxjava2:Flowable.unsafeCreate()vs Flowable.fromPublisher()

时间:2018-02-28 22:40:17

标签: reactive-programming rx-java2

如果我根据反应规范实现我自己的Publisher<T>

Publisher<Object> publisher = new MyAwesomelyReactivePublisher<>();

现在我想用rxJava2 Flowable连接它,它们之间的区别是什么:

Flowable.unsafeCreate(publisher);

Flowable.fromPublisher(publisher);

两者的用例是什么?阅读Javadoc对我没有帮助。

1 个答案:

答案 0 :(得分:1)

您错过了JavaDoc差异:

unsafeCreate

  

抛出:   IllegalArgumentException - 如果onSubscribe是Flowable的子类;这样的实例不需要转换,可能是1.x的端口残余,或者应该使用hide()代替。

除此之外,它们的实现方式相同:

https://github.com/ReactiveX/RxJava/blob/2.x/src/main/java/io/reactivex/Flowable.java#L2131 https://github.com/ReactiveX/RxJava/blob/2.x/src/main/java/io/reactivex/Flowable.java#L4257