【发布时间】:2020-04-30 03:48:22
【问题描述】:
简单的可观察变量按预期工作,立即在同一线程上触发回调。 为什么任何可观察类型(Subject、ISubject、Observable、IObservable)的类变量都不会触发回调?
简单变量示例 - [作品]
var x1 = new Subject<string>();
var x2 = x1.DistinctUntilChanged();
x2.Subscribe(o =>
{
// Triggered as expected
});
x1.OnNext("Hello");
类示例 - [不工作]
public class InstrumentModel
{
public Subject<string> Demo => new Subject<string>();
}
var class1 = new InstrumentModel();
class1.Demo
//.DistinctUntilChanged()
//.SubscribeOn(Scheduler.CurrentThread)
//.ObserveOn(Scheduler.CurrentThread)
.Subscribe(o =>
{
// Never triggered
});
class1.Demo.OnNext("Hello");
【问题讨论】: