显式终止RxJava中的流

时间:2019-03-11 06:45:45

标签: rx-java

在阅读RxJava时,我注意到您可以控制流何时完成,即最后一次发送何时向下游发送。目前尚不清楚您如何实际控制它。我在RxJava上看到的大多数示例都可以让您使用“ just”或“ fromIterable”之类的东西和数组来创建Observable。然后,将数组中的每个项目向下发送,然后在处理完最后一个发射之后调用onComplete。当然,您可以应用“ take”之类的运算符,这些运算符也会在发送了排放量之后使onComplete执行。

但是是否可以使onComplete由一些更通用的运算符(例如“ finish”(不存在))执行?还是必须依靠现有的运算符来执行onComplete?换句话说,我可以依靠显式调用某些东西来结束流,而不是依赖于满足onComplete的某些条件?

1 个答案:

答案 0 :(得分:0)

您可以使用TakeWhile运算符:

  

Observable发出的镜像项,直到指定条件为假