1
我創建函數,它的工作原理,但我不明白爲什麼。Rx重放和加入
任務。
有2個流。
- 通知流n
- 行情流Q
該函數應配對通知與報價上以下條件:
- 當新通知到達至N流,它應該是配上來自Q流的最新報價。
- 如果通知在第一次報價到達之前到達,它們都應與首先到達的報價配對。
- 如果N流在Q流開始後一段時間後開始,它仍然應該可以訪問來自Q流的最後一個報價。
大理石圖
1.
--N1--N2--N3-------------
---------------Q1--------
---------------N1-N2-N3--
Q1 Q1 Q1
2.
-----------N1----N2--N3-----
--Q1--Q2------Q3------------
-----------N1----N2--N3----
Q2 Q3 Q3
現在,這是我的函數
//qs, ns - hot streams
var rqs = qs.replay(null, 1);
qs.connect();
rqs.connect();
ns.connect();
var cs = ns.join(rqs,
_ => rqs,
_ => qs,
(n, q) => {
return {n : n, q : q};
}
).distinctUntilChanged(x => x.n);
https://jsbin.com/zeyiyeg/edit?js,console
在這裏,我不明白爲什麼
- 爲什麼救援中隊QS之前,請務必通知
- 不能掌握在這種情況下 當新的通知和報價來到加入的邏輯,攜手打開未來窗口,並等到
_ => rqs
流完成,爲什麼它完成了,rqs - 是熱流,根本不應該完成。
謝謝。
代碼似乎在jsbin破分組。 – paulpdaniels
請不要鏈接到外部網站。答案應該在Stack Overflow中完全闡述。 – Enigmativity