system.reactive - 对于 Buffer 等运算符来说,打开和关闭边界的含义是什么?

标签 system.reactive

我不明白需要打开或关闭边界的 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 页)。

关于system.reactive - 对于 Buffer 等运算符来说,打开和关闭边界的含义是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37824033/

相关文章:

c# - IObservable.Create的subscribe参数返回的Action到底是干什么用的?

c# - 将 Rx 聚合保存到局部变量

c# - .Net Reactive Extensions Framework (Rx) 是否考虑拓扑顺序?

c# - 如何在 Rx 中使用异步方法订阅?

workflow-foundation-4 - IObservable<> 缺少 .Subscribe 扩展方法

c# - 我怎样才能使这个 Observable 更可重用?

system.reactive - 要求对 Reactive Extensions (RX) 进行清晰、如画的解释?

c# - 说明 async/await 和 Reactive (Rx) 扩展范例之间区别的代码示例?

python - 在 RX 中构建双重无限轮询行为

c# - Rx Throttle(...).ObserveOn(scheduler) 和 Throttle(..., scheduler) 的区别