1

我有以下 Observable。

IObservable<MyDto> observable;

现在为了计算 Observable 中的项目数,我不能使用以下代码,因为我的 observable 是 Hot 且长时间运行的,并且永远不会调用对“count”的订阅。

var count = observable.Count()

我希望每次物品到达时都得到计数,这是我想做的事情

observable.Subscribe(o => Console.WriteLine(" Object received "));
observable.Count().Subscribe(c => Console.WriteLine("Current count is " + c.ToString() + " but this is not final count, more are coming"));

我怎样才能做到这一点?

4

1 回答 1

4

使用扫描

observable
    .Scan(0, (count, _) => count + 1)
    .Subscribe(count => Console.WriteLine("Current count is " + count));
于 2013-09-12T12:32:44.517 回答