public async Task TestBlocking2() { var slowFlow = new SlowFlow(new DataflowOptions { FlowMonitorEnabled = true, MonitorInterval = TimeSpan.FromSeconds(5), RecommendedCapacity = 2 }); await slowFlow.SendAsync("a"); await slowFlow.SendAsync("a"); await slowFlow.SendAsync("a"); await slowFlow.SendAsync("a"); await slowFlow.SendAsync("a"); await slowFlow.SendAsync("a"); //Assert.IsTrue(slowFlow.Post("a")); }
public async Task TestBlocking1() { var slowFlow = new SlowFlow(new DataflowOptions { FlowMonitorEnabled = true, MonitorInterval = TimeSpan.FromSeconds(5), RecommendedCapacity = 2 }); Assert.IsTrue(slowFlow.Post("a")); Assert.IsTrue(slowFlow.Post("a")); Assert.IsFalse(slowFlow.Post("a")); Assert.IsFalse(slowFlow.Post("a")); Assert.IsFalse(slowFlow.Post("a")); Assert.IsFalse(slowFlow.Post("a")); await Task.Delay(2000); Assert.IsTrue(slowFlow.Post("a")); }
public static async Task SlowFlowAsync() { var slowFlow = new SlowFlow( new DataflowOptions { FlowMonitorEnabled = true, BlockMonitorEnabled = true, MonitorInterval = TimeSpan.FromSeconds(2), PerformanceMonitorMode = DataflowOptions.PerformanceLogMode.Verbose }); await slowFlow.ProcessAsync(new[] { "abcd", "abc", "ab", "a" }); }