Chr*_*ebb 1 c# system.reactive
我通过Observable监控股票报价流,我认为它符合某种条件,例如 -
Observable
.Empty<Quote>
.Where(q => q.Price > watchPrice)
.Subscribe(q => { // do stuff } );
Run Code Online (Sandbox Code Playgroud)
现在,在"做东西"的时候,我理想的是得到最后3个"q"来自where子句,所以有点像BufferWithCount(),但每个条目都包含Subscribe()包含最后3个条目.这样我就可以保存导致条件评估的报价更改的快照.
伪大理石图 -
in - a b c d e f
out - a ba cba dcb edc fde
Run Code Online (Sandbox Code Playgroud)
任何想法都赞赏
像这样?
static void Main()
{
new[] {"a", "b", "c", "d", "e", "f"}
.ToObservable()
.Scan(Enumerable.Empty<string>(), (x, y) => x.StartWith(y).Take(3))
.Subscribe(x =>
{
x.Run(Console.Write);
Console.WriteLine();
});
Console.ReadLine();
}
Run Code Online (Sandbox Code Playgroud)