我正在创建两个(或更多)IObservable<T>
相同 T 的 s。它们是从中生成的Task<IEnumerable<T>>
,其中一个可以比其他更快地返回。我只关心IObservable
返回第一个值的那个——这是我从那时起使用的那个。
我记得参加了在剑桥举行的 Jon Skeet 演讲,他以一种非常简洁的方式使用 TPL 做到了这一点,但我不记得是如何做到的!理想情况下,我会得到这样的方法:
IObservable<T> PickFastestObservable<T>(IEnumerable<IObservable<T>> slowObservables);
但如果我必须直接在任务上做,我可能会解决一些问题。
我正在努力让自己获得一些我有信心的东西。
干杯,