本文整理汇总了C#中Subject.Average方法的典型用法代码示例。如果您正苦于以下问题:C# Subject.Average方法的具体用法?C# Subject.Average怎么用?C# Subject.Average使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Subject
的用法示例。
在下文中一共展示了Subject.Average方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: MultipleSubscriptions
public void MultipleSubscriptions()
{
var numbers = new Subject<int>();
double sum = 0;
double average = 0;
numbers.Sum().Subscribe(n => sum = n);
numbers.OnNext(1, 1, 1, 1, 1);
numbers.Average().Subscribe(n => average = n);
numbers.OnNext(2, 2, 2, 2, 2);
numbers.OnCompleted();
Assert.AreEqual(15, sum);
Assert.AreEqual(average, 2);
}
示例2: Run
public static void Run()
{
{
Console.WriteLine("= Count ==================================");
var numbers = Observable.Range(0,3);
numbers.Dump("numbers");
numbers.Count().Dump("count");
}
{
Console.WriteLine("= Min/Average ==================================");
var numbers = new Subject<int>();
numbers.Dump("numbers");
numbers.Min().Dump("Min");
numbers.Average().Dump("Average");
numbers.OnNext(1);
numbers.OnNext(2);
numbers.OnNext(3);
numbers.OnCompleted();
}
{
Console.WriteLine("= First =================================");
var interval = Observable.Interval(TimeSpan.FromSeconds(3));
//Will block for 3s before returning
Console.WriteLine(interval.First());
// - Use a try/catch blocks around the First() call
// - Use Take(1) instead. However, this will be asynchronous, not blocking.
// - Use FirstOrDefault extension method instead
// Last
}
{
Console.WriteLine("= Single =================================");
// var numbers = Observable.Range(0,3);
var numbers = Observable.Range(0,1);
Console.WriteLine(numbers.Single());
}
}