RxJava-Subject

2023-02-17  本文已影响0人  litchi_coder

Subject在ReactiveX是作为observer和observerable的一个bridge或者proxy。因为它是一个观察者,所以它可以订阅一个或多个可观察对象,同时因为他是一个可观测对象,所以它可以传递和释放它观测到的数据对象,并且能释放新的对象。


Rx中一下几种Subject:PublishSubject、BehaviorSubject、ReplaySubject、AsyncSubject:


1.PublishSubject


从订阅之后开始将事件向下传递给观察者,不会重放过去的事件。

2.BehaviorSubject

从订阅之前的最后一个事件开始向下传递,如果订阅前没有事件,可以设置一个默认值。

3.ReplaySubject


将所有事件缓存起来,每次订阅都会重放缓存中的所有事件,可以控制缓存事件的数量或时间跨度。

4.AsyncSubject


只在事件流结束时,将最后一个事件发送给观察者,如果没有事件,也会发送一个默认值。

4.MaybeSubject

MaybeSubject提供了状态方法onSuccess onError

应用场景:

1.状态监听

2.

https://blog.csdn.net/mq2553299/article/details/78848773

上一篇 下一篇

猜你喜欢

热点阅读