pau*_*aul 15 java java-8 rx-java
我一直在寻找RxJava1 https://github.com/ReactiveX/RxJava/releases和RxJava2 https://github.com/ReactiveX/RxJava/wiki/Reactive-Streams的文档,看起来与RxJava 的独特之处在于2有Java Stream.
还有其他不同吗?
我一直在使用1.1.3版本,但我不确定是否值得将其转移到RxJava2,因为我们已经在代码中使用了Java 8流
问候.
aka*_*okd 24
RxJava 1.x和2.x都设计为Java 6+,因此我们不能在任何版本中支持Java 8 Streams.决定继续支持无数的Android设备和版本,这些设备和版本不会更新到兼容Java 8的运行时.如果您需要Java 8支持,请考虑使用Pivotal的Reactor-Core.
两者之间的主要区别在于2.x直接针对Reactive-Streams SPI,为此,它已经从头开始完全重写.我们目前处于开发预览模式,您可以按照2.x分支自述文件中的说明进行访问.
2.x的完全重写大大改善了我们的内存消耗和性能; 这是一个比较各种版本和库的基准.
在API表面上,我们计划继续支持1.x中存在的所有运算符,并且可能会在1.x结束支持之前将这两个版本扩展到新版本几年.
由于2.x是一种新架构,因此必须更新许多依赖库(例如,Retrofit); 这可能不会在今年8月底之前发生,也可能需要几个月才能赶上.这是包含差异亮点的维基页面.
Ami*_*har 18
以下是RxJava2和RxJava1之间的区别:
为了允许RxJava 1.x和RxJava 2.x并排,RxJava 2.x在maven坐标下io.reactivex.rxjava2:rxjava:2.x.y
,类可以在下面访问io.reactivex
.
从1.x切换到2.x的用户必须重新组织他们的导入,但要小心.
onCompleted
- > onComplete
- 没有尾随d
CompositeSubscription
- > CompositeDisposable
- CompositeDisposable
作为CompositeSubscription
与Subscription
已被删除
Func1
- > Function
Func2
- > BiFunction
limit
运算符已被删除 - take
在RxJava2中使用
RxJava 2.0已经在Reactive-Streams规范之上从头开始完全重写.规范本身已经从RxJava 1.x发展而来,为反应系统和库提供了一个共同的基线.
由于Reactive-Streams具有不同的体系结构,因此它要求对一些众所周知的RxJava类型进行更改.
RxJava2具有更好的性能和低内存占用过RxJava1
[ 来源: https ://github.com/ReactiveX/RxJava/wiki/What%27s-different-in-2.0 ]
归档时间: |
|
查看次数: |
8123 次 |
最近记录: |