Rx编程:序列构建、LINQ查询及操作符详解
1. 序列构建器
Rx 定义了多个可直接创建新序列的方法,无需自定义类型或回调函数,适用于创建单元素序列、空序列等特定简单场景,这些均为Observable类的静态方法。
-Empty:Observable.Empty<T>方法类似于 LINQ to Objects 中的Enumerable.Empty<T>方法,用于生成一个空序列。不同之处在于,它实现的是IObservable<T>接口,而非IEnumerable<T>接口。当使用需要可观察源的 API,但又没有可提供的项时,此方法非常有用。任何订阅Observable.Empty<T>序列的观察者,其OnCompleted方法都会立即被调用。
-Never:Observable.Never<T>方法生成的序列不会产生任何项,且永远不会完成。在 LINQ to Objects 中没有与之对应的方法。在 Rx 的响应式世界里,源不会仅仅因为当前没有产生项而阻塞线程,所以该方法在某些需要表示无限时长的操作符中很有用。
-Return:Observable.Return<T>方法接受一个参数,并返回