使用Rx同步两个流

时间:2012-07-27 08:22:36

标签: .net windows system.reactive

我有来自主源的数据流,第二个流来自不同来源的富集数据。不幸的是,丰富消息通常在原始数据之前到达。我想确保在第一次发布原始消息之前缓冲丰富消息。我能用Rx做到这一点吗?

2 个答案:

答案 0 :(得分:1)

简短的回答,可能。正如@Enigmativity所说,这也是一个有点开放的问题。

  1. 是否有1对1的消息(显然不是 - '可能没有浓缩值')
  2. 浓缩消息和主消息是否以相同的顺序到达。如果没有,那么我假设有某种类型的ID可以将浓缩与主消息相匹配
  3. 似乎主消息可能不会被延迟,并且必须在它到达时被推送。然后如何将丰富消息应用于主消息?我们是否推出了Master + Enrichment的新消息?我假设您不想改变状态,即在转发后修改主消息。

答案 1 :(得分:0)

我建议您在这种情况下使用ReplaySubject。您可以在此处找到工作示例:How to subscribe to, but buffer data from, an IObservable until another IObservable has published?。该代码对我很有用。