【发布时间】:2017-09-12 05:55:04
【问题描述】:
为什么
var a = Observable.Interval(TimeSpan.FromSeconds(1))
.Publish();
a.Subscribe(o =>
{
Console.WriteLine("Test");
});
a.Connect();
火,但不是
var a = Observable.Interval(TimeSpan.FromSeconds(1))
.MaxBy(o=>o)
.Publish();
a.Subscribe(o =>
{
Console.WriteLine("Test");
});
a.Connect();
我正在尝试在不同的场景中使用 MaxBy,但什至无法使上述方法正常工作。
这是我的更复杂的例子
var _telemetryBatchObservable = Observable.FromEventPattern<DeviceStateStreamEventArg>(
ev => DeviceStateStreamEvent += ev,
ev => DeviceStateStreamEvent -= ev)
.Synchronize()
.GroupBy(o => o.EventArgs.DeviceId)
.Select(o => o.MaxBy(i => i.EventArgs.DateTimeOffset))
.SelectMany(o => o.Select(i => i))
.SelectMany(o => o.Select(i => i))
.Buffer(TimeSpan.FromMilliseconds(5000), 100)
.Publish();
【问题讨论】:
标签: c# system.reactive