运算符observeOn() - runSync与runAsync方法

时间:2018-03-27 14:06:42

标签: rx-java2

当调用runSync和runAsync时,您能描述一下observeOn运算符的SYNC和ASYNC源模式之间的区别吗?感谢

1 个答案:

答案 0 :(得分:1)

它们是RxJava稍微复杂的运算符融合机制的一部分。我有两篇博文(Part 1Part 2)来解释一般的概念。

简而言之,主要区别在于不应要求同步融合的来源,并且根据定义已经完成。这意味着当队列用完项目时,这是完成的指示,主机操作员可以在此之后调用onComplete。相反,应该请求异步融合的源,并且空队列不表示源已完成。

这两种方法基本上源于RxJava运算符设计的通用drain()方法,经过优化和修改,将上述事实考虑在内并根据它们采取行动。