我什么时候可以依赖onNext同步传播?

时间:2017-11-08 02:34:53

标签: rxjs reactivex

the Observable contract的核心原则之一是在onNext / onComplete通知之前发出所有onError次通知。我想知道我是否可以依赖来自运营商的onNext通知始终位于原始onComplete的{​​{1}}之前。有明显的组合和计时运算符,例如Observabledelaydebounce,这一般不是真的,但zipmap之类的呢?还是scan

当重试/重复条件对流项目时,此时间保证很重要。例如,假设我想在丢弃数据包时重试流式网络请求:

concat

上述代码容易受到const num_packets$ = new BehaviorSubject(); cold_request$.scan((num, _) => num + 1, 0) .repeatWhen(completions => completions.takeWhile(_ => num_packets$.getValue() < expected_num_packets) ) .subscribe(num_packets$); 的最后一个增量[s]与请求完成之间的竞争条件的影响,除非num_packets$之外的onNext通知都在请求流完成。

0 个答案:

没有答案