如何在特定时间启动IObservable?
问题描述:
假设我使用Rx,我如何创建一个IObservable,它将每隔5秒触发一个事件,我怎样才能使特定日期的可观察开始? 我怎样才能使火上一轮日的事件(每个午夜?)如何在特定时间启动IObservable?
答
// Do you really care if it's up to five seconds later than midnight?
Observable.Interval(TimeSpan.FromSeconds(5))
.Where(x => DateTime.Now > new DateTime(1,2,2010));
答
如何创建一个的IObservable这将触发一个事件,每5 秒
观察到。间隔(TimeSpan.FromSeconds(5))
我怎样才能使特定日期的观察的开始
您可以使用定时器此:
// Fire at Jan 2014.
var jan2014 = new DateTimeOffset(2014, 1, 1, 0, 0, 0);
Observable.Timer(jan2014);
我怎样才能使火上一轮日的事件
定时器具有过载,让你(每个午夜?)在一定的时间内开火,然后每隔一段时间开火。它应该看起来像这样:
// Fire at Jan 2014 at midnight, then every 24 hours after that (e.g. every midnight):
var jan2014 = new DateTimeOffset(2014, 1, 1, 0, 0, 0);
Observable.Timer(jan2014, TimeSpan.FromHours(24));