Rx 中的主题、适配、异步 API 及定时序列详解
1. Rx 中的主题
在 Rx 中,有两种特殊的主题: ReplaySubject<T> 和 AsyncSubject<T> 。
1.1 ReplaySubject
ReplaySubject<T> 会记录它接收到的值,以便向每个新订阅者重播旧项目。当它为特定订阅者提供了所有记录的项目后,就会对该订阅者转变为更类似热源的行为,转发所有新传入的项目。默认情况下, ReplaySubject<T> 的每个订阅者最终都会看到该主题从其源接收到的每个项目,无论订阅者订阅的时间早晚。
ReplaySubject<T> 类似于 BehaviorSubject<T> ,但记忆更长。在默认配置下,只要它订阅到一个源,就会消耗越来越多的内存。不过,你可以通过其构造函数的重载来限制要重播的项目数量或保留项目的时间。如果这样做,新订阅者将无法再依赖获取之前接收到的所有项目。
1.2 AsyncSubject
AsyncSubject<T> 会记住它接收到的最终值。如果你在其源完成之前订阅 AsyncSubject<T> ,你的观察者在源完成之前不会收到任何东西。但一旦源完成, AsyncSubject<T> 就会
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



