CSharp · Console
using System;
using System.Reactive.Linq;
public class Program
{
public static void Main()
{
Observable
.Generate(0, _ => true, x => x, x => x, _ => TimeSpan.FromMilliseconds(10))
.Select(_ => Observable
.Return(DateTime.Now)
.Do(d => Console.WriteLine(
"Then: {0:HH:mm:ss.fff}, " +
"Now: {1:HH:mm:ss.fff}, " +
"TotalMemory: {2:#,0} bytes", d, DateTime.Now, GC.GetTotalMemory(true)))
.Delay(TimeSpan.FromMilliseconds(1000)))
.Merge(maxConcurrent: 1)
.Take(9)
.Wait();
}
}