我不明白需要开仓或闭合边界的 Buffer 运算符的重载。我所指的重载是:
public static IObservable<IList<TSource>> Buffer<TSource,
TBufferClosing>(this IObservable<TSource> source,
Func<IObservable<TBufferClosing>> bufferClosingSelector)
public static IObservable<IList<TSource>> Buffer<TSource,
TBufferBoundary>(this IObservable<TSource> source,
IObservable<TBufferBoundary> bufferBoundaries)
public static IObservable<IList<TSource>> Buffer<TSource,
TBufferOpening, TBufferClosing>(this IObservable<TSource> source,
IObservable<TBufferOpening> bufferOpenings, Func<TBufferOpening,
IObservable<TBufferClosing>> bufferClosingSelector)
您能否举例解释这些边界的含义是什么?
它们等效于此处记录的Window
运算符(但每个窗口产生IList<T>
而不是IObservable<T>
) - http://introtorx.com/Content/v1.0.10621.0/17_SequencesOfCoincidence.html
我建议暂停并阅读目前在Rx上的一些doco。这是一个小领域,但有很多小概念。这些的组成是理解它的关键。例如,阅读所有IntroToRx应该需要几个小时(只有17页)。