30、RxJava:使用、内存管理与未来方向

RxJava:使用、内存管理与未来方向

1. RxJava中的类型选择

1.1 Completable的引入

在某些架构中,存在许多没有有意义结果但可能会抛出异常的操作,例如命令查询分离(CQS)架构中的命令操作,它们是异步的且没有结果。在这种情况下,使用 rx.Single<Void> 效果不佳,因此引入了 rx.Completable 。当架构中有大量此类操作时,可使用 Completable

1.2 Observable的适用场景

当应用程序处理随时间出现的事件流时,如用户登录、GUI 事件和推送通知, Observable 是不二之选。虽然 Java 从 1.0 版本就提供了 java.util.Observable ,允许注册观察者并同时通知它们,但它存在以下不足:
- 组合能力(没有操作符)
- 泛型支持不足(观察者的 update() 方法接收表示任意通知负载的 Object
- 性能问题(到处使用 synchronized 关键字,内部使用 java.util.Vector
- 关注点分离不足(在某种意义上,它将 Observable PublishSubject 组合在同一个接口下)
- 并发支持不足(所有观察者按顺序通知)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值