1
給定以下代碼。BehaviourSubject和CombineLatest - 怪異行爲
EventLoopScheduler scheduler = new EventLoopScheduler(ts => new Thread(ts));
BehaviorSubject<int> subject = new BehaviorSubject<int>(0);
subject
.ObserveOn(scheduler)
.CombineLatest(Observable.Interval(TimeSpan.FromSeconds(1), scheduler), (x, y) => x)
.Subscribe(x => Debug.WriteLine(x));
subject.OnNext(1);
爲什麼打印?
0
1
0
1
0
1
...
相反的:
所有輸出的0
1
1
1
1
1
...
這是英國版本。 – ronag
你是什麼意思?當你從英國下載反應式擴展時,你會得到英國改編名稱的「BehaviorSubject」?我想你已經在你的問題中發佈了一段可編譯的代碼。但是我的RX程序集沒有「BehaviourourSubject」類。所以我的假設 - 你有自己的'BehaviourSubject'實現。如果我是對的,你可以請張貼嗎? –
Appologies,它應該是BehaviorSubject,不知道如何「U」在那裏。 – ronag