繁体   English   中英

如何观察事件的特定组合?

[英]How to observe a specific combination of events?

我用Rx的FromEventPattern制作了多个可观察FromEventPattern ,例如:

var a = Observable.FromEventPattern(...); // event A
var b = Observable.FromEventPattern(...); // event B
var c = Observable.FromEventPattern(...); // event C

如何观察这些事件的特定顺序?

例如,我想观察一个情况,即在特定的有限时间内,发生了A到C的情况,但中间没有B。

或者:先是ABC,然后是ABC,然后是B。

这对您有用吗?

var query = a.Select(_ => c.TakeUntil(b)).Switch();

这会在5秒钟内起作用吗?

var query = a
    .Select(_ => c
        .TakeUntil(b)
        .TakeUntil(Observable.Timer(TimeSpan.FromSeconds(5.0))))
    .Switch();

否则,您需要查看WindowJoin运算符。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM