public void TearDown() { _taskScheduler.Dispose(); PendingTask.GetActivePeriodicTimersCount().Should().Be(0); PendingTask.GetActivePeriodicSlTimersCount().Should().Be(0); PendingTask.GetExecutingActionsCount().Should().Be(0); PendingTask.GetActiveTimersCount().Should().Be(0); }
public async Task ActiveTimerEndsTest() { PendingTask.GetActiveTimersCount().Should().Be(0); _taskScheduler.Schedule(() => { Thread.Sleep(100); }, 10); PendingTask.GetActiveTimersCount().Should().Be(1); await Task.Delay(200); PendingTask.GetActiveTimersCount().Should().Be(0); }
private void CollectMemoryAndThreadsUsage() { Metrics.Measure.Histogram.Update(Gen0Collections, GC.CollectionCount(0)); Metrics.Measure.Histogram.Update(Gen1Collections, GC.CollectionCount(1)); Metrics.Measure.Histogram.Update(Gen2Collections, GC.CollectionCount(2)); Metrics.Measure.Histogram.Update(GcTotalMemory, GC.GetTotalMemory(false)); Metrics.Measure.Histogram.Update(PendingTasks, TaskScheduler.GetGlobalScheduledOnceTasksCount()); Metrics.Measure.Histogram.Update(ExecutingTask, PendingTask.GetExecutingActionsCount()); Metrics.Measure.Histogram.Update(ActiveTimers, PendingTask.GetActiveTimersCount()); Metrics.Measure.Histogram.Update(ActivePeriodicTimers, PendingTask.GetActivePeriodicTimersCount()); Metrics.Measure.Histogram.Update(ActivePeriodicSlTimers, PendingTask.GetActivePeriodicSlTimersCount()); }
public void TaskCountingDelayedTasksTest() { using (var taskScheduler2 = new TaskScheduler(Mock.Of <IShamanLogger>())) { _taskScheduler.Schedule(() => { Thread.Sleep(100); }, 10); _taskScheduler.Schedule(() => { Thread.Sleep(100); }, 10); _taskScheduler.Schedule(() => { Thread.Sleep(100); }, 10); _taskScheduler.Schedule(() => { Thread.Sleep(100); }, 10); PendingTask.GetActiveTimersCount().Should().Be(4); taskScheduler2.Schedule(() => { Thread.Sleep(100); }, 10); PendingTask.GetActiveTimersCount().Should().Be(5); } }